Robust Distributed System Nucleus (rDSN)  ver 1.0.0
Public Types | Public Member Functions | Static Public Member Functions | Friends | List of all members
dsn::task_queue Class Referenceabstract

Public Types

typedef task_queue *(* factory) (task_worker_pool *, int, task_queue *)
 

Public Member Functions

DSN_API task_queue (task_worker_pool *pool, int index, task_queue *inner_provider)
 
virtual void enqueue (task *task)=0
 
virtual taskdequeue (int &batch_size)=0
 
int count () const
 
int decrease_count (int count=1)
 
int increase_count (int count=1)
 
const std::string & get_name ()
 
task_worker_pool * pool () const
 
bool is_shared () const
 
int worker_count () const
 
task_workerowner_worker () const
 
int index () const
 
volatile int * get_virtual_length_ptr ()
 
admission_controller * controller () const
 
void set_controller (admission_controller *controller)
 

Static Public Member Functions

template<typename T >
static task_queuecreate (task_worker_pool *pool, int index, task_queue *inner_provider)
 

Friends

class task_worker_pool
 

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