libutil++  1.9.3
 All Classes Functions Variables
Public Types | Public Member Functions | Static Public Attributes | Protected Attributes | List of all members
sella::util::TaskQueue Class Reference
Inheritance diagram for sella::util::TaskQueue:
sella::util::ThreadPool

Public Types

typedef std::shared_ptr
< TaskQueue
shared
 

Public Member Functions

 TaskQueue (const size_t capacity=DefaultMinimumCapacity)
 
 TaskQueue (Log::shared log, const size_t capacity=DefaultMinimumCapacity)
 
 TaskQueue (const TaskQueue &other)=delete
 
TaskQueueoperator= (const TaskQueue &other)=delete
 
size_t size (void) const
 
bool empty (void) const
 
void clear (void)
 
Task::shared top (void) const
 
Task::shared next (void) const
 
const timeval getDelay (timeval fallback=FallbackTimeval) const
 
uint64_t getDelayMsec (uint64_t fallback=FallbackMsecDelay, uint64_t maximum=0) const
 
uint64_t getDelayUsec (uint64_t fallback=FallbackUsecDelay, uint64_t maximum=0) const
 
void push (Task::shared &task)
 
void push (Task::shared &task, const std::chrono::system_clock::duration &delay, int priority=0)
 
void push (Task::shared &task, const std::chrono::system_clock::time_point &time, int priority=0)
 
void push (Task::shared &task, time_t sec, suseconds_t usec=0, int priority=0)
 
void push (Task::shared &task, timeval &tv, int priority=0)
 
bool repush (Task::shared &task, const std::chrono::system_clock::duration &delay, int priority=0, bool strict=false)
 
bool repush (Task::shared &task, const std::chrono::system_clock::time_point &time, int priority=0, bool strict=false)
 
bool repush (Task::shared &task, time_t sec, suseconds_t usec=0, int priority=0, bool strict=false)
 
bool repush (Task::shared &task, timeval &tv, int priority=0, bool strict=false)
 
void pop (void)
 
bool erase (Task::shared &task, bool firstonly=true)
 
bool erase (void *object)
 
size_t capacity (void) const
 
void reserve (size_t capacity)
 
void print (void) const
 
void setLog (Log::shared log)
 
bool isReady (void) const
 

Static Public Attributes

static const size_t DefaultMinimumCapacity = 16
 
static const uint64_t FallbackMsecDelay = 200
 
static const uint64_t FallbackUsecDelay = 200000
 

Protected Attributes

Log::shared libutilxx__log
 
std::vector< Task::shared > heap
 

Detailed Description

Definition at line 26 of file TaskQueue.h.


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