|
Thread System 0.3.1
High-performance C++20 thread pool with work stealing and DAG scheduling
|
Interface for executable job objects. More...
#include <job_types.h>

Public Member Functions | |
| virtual | ~job_interface ()=default |
| virtual bool | execute ()=0 |
| Execute the job. | |
| virtual job_priority | priority () const =0 |
| Get the priority of this job. | |
| virtual job_state | state () const =0 |
| Get the current state of this job. | |
| virtual std::string | description () const =0 |
| Get a description of this job (for debugging/logging) | |
| virtual bool | cancel ()=0 |
| Cancel the job if it hasn't started executing yet. | |
Interface for executable job objects.
This interface defines the contract that all job objects must follow. It provides a clean abstraction for work units that can be scheduled and executed by thread pools.
Definition at line 46 of file job_types.h.
|
virtualdefault |
|
pure virtual |
Cancel the job if it hasn't started executing yet.
|
nodiscardpure virtual |
Get a description of this job (for debugging/logging)
|
pure virtual |
Execute the job.
|
nodiscardpure virtual |
Get the priority of this job.
|
nodiscardpure virtual |
Get the current state of this job.