hscommon.jobprogress.performer

ThreadedJobPerformer Run threaded jobs and track progress.
class hscommon.jobprogress.performer.ThreadedJobPerformer

Run threaded jobs and track progress.

To run a threaded job, first create a job with _create_job(), then call _run_threaded(), with your work function as a parameter.

Example:

j = self._create_job() self._run_threaded(self.some_work_func, (arg1, arg2, j))

reraise_if_error()

Reraises the error that happened in the thread if any.

Call this after the caller of run_threaded detected that self._job_running returned to False