BaseJob
class BaseJob(backend, job_id)
Bases: abc.ABC
DEPRECATED Legacy Class to handle asynchronous jobs
Initializes the asynchronous job.
Parameters
- backend (
BaseBackend
) – the backend used to run the job. - job_id (
str
) – a unique id in the context of the backend used to run the job.
Methods
backend
BaseJob.backend()
Return the backend where this job was executed.
Return type
BaseBackend
cancel
abstract BaseJob.cancel()
Attempt to cancel the job.
cancelled
BaseJob.cancelled()
Return whether the job has been cancelled.
Return type
bool
done
BaseJob.done()
Return whether the job has successfully run.
Return type
bool
in_final_state
BaseJob.in_final_state()
Return whether the job is in a final job state.
Return type
bool
job_id
BaseJob.job_id()
Return a unique id identifying the job.
Return type
str
result
abstract BaseJob.result()
Return the results of the job.
running
BaseJob.running()
Return whether the job is actively running.
Return type
bool
status
abstract BaseJob.status()
Return the status of the job, among the values of JobStatus
.
submit
abstract BaseJob.submit()
Submit the job to the backend for execution.
wait_for_final_state
BaseJob.wait_for_final_state(timeout=None, wait=5, callback=None)
Poll the job status until it progresses to a final state such as DONE
or ERROR
.
Parameters
-
timeout (
Optional
[float
]) – Seconds to wait for the job. IfNone
, wait indefinitely. -
wait (
float
) – Seconds between queries. -
callback (
Optional
[Callable
]) –Callback function invoked after each query. The following positional arguments are provided to the callback function:
- job_id: Job ID
- job_status: Status of the job from the last query
- job: This BaseJob instance
Note: different subclass might provide different arguments to the callback function.
Raises
JobTimeoutError – If the job does not reach a final state before the specified timeout.
Return type
None