libcaf  0.14.4
Public Types | Public Member Functions | Static Public Member Functions | List of all members
caf::policy::work_sharing Class Reference
Inheritance diagram for caf::policy::work_sharing:
caf::policy::scheduler_policy

Public Types

using queue_type = std::list< resumable * >
 

Public Member Functions

template<class Coordinator >
void enqueue (Coordinator *self, resumable *job)
 
template<class Coordinator >
void central_enqueue (Coordinator *self, resumable *job)
 
template<class Worker >
void external_enqueue (Worker *self, resumable *job)
 
template<class Worker >
void internal_enqueue (Worker *self, resumable *job)
 
template<class Worker >
void resume_job_later (Worker *self, resumable *job)
 
template<class Worker >
resumabledequeue (Worker *self)
 
template<class Worker >
void before_shutdown (Worker *)
 
template<class Worker >
void before_resume (Worker *, resumable *)
 
template<class Worker >
void after_resume (Worker *, resumable *)
 
template<class Worker >
void after_completion (Worker *, resumable *)
 
template<class Worker , class UnaryFunction >
void foreach_resumable (Worker *self, UnaryFunction f)
 
template<class Coordinator , class UnaryFunction >
void foreach_central_resumable (Coordinator *, UnaryFunction)
 
- Public Member Functions inherited from caf::policy::scheduler_policy
template<class Coordinator >
void central_enqueue (Coordinator *self, resumable *job)
 Enqueues a new job to coordinator.
 
template<class Worker >
void external_enqueue (Worker *self, resumable *job)
 Enqueues a new job to the worker's queue from an external source, i.e., from any other thread. More...
 
template<class Worker >
void internal_enqueue (Worker *self, resumable *job)
 Enqueues a new job to the worker's queue from an internal source, i.e., from the same thread. More...
 
template<class Worker >
void resume_job_later (Worker *self, resumable *job)
 Called whenever resumable returned for reason resumable::resume_later.
 
template<class Worker >
resumabledequeue (Worker *self)
 Blocks until a job could be dequeued. More...
 
template<class Worker >
void before_shutdown (Worker *self)
 Performs cleanup action before a shutdown takes place.
 
template<class Worker >
void before_resume (Worker *self, resumable *job)
 Called immediately before resuming an actor.
 
template<class Worker >
void after_resume (Worker *self, resumable *job)
 Called whenever an actor has been resumed. More...
 
template<class Worker >
void after_completion (Worker *self, resumable *job)
 Called whenever an actor has completed a job.
 
template<class Worker , typename UnaryFunction >
void foreach_resumable (Worker *self, UnaryFunction f)
 Applies given functor to all resumables attached to a worker.
 
template<class Coordinator , typename UnaryFunction >
void foreach_central_resumable (Coordinator *self, UnaryFunction f)
 Applies given functor to all resumables attached to the coordinator.
 

Static Public Member Functions

template<class WorkerOrCoordinator >
static auto d (WorkerOrCoordinator *self) -> decltype(self->data())
 

Detailed Description


The documentation for this class was generated from the following file: