![]() |
VR-Forces 4.2 Class Documentation
|
Simple asynchronous callback queue. More...
Public Types | |
| typedef boost::function< void()> | Callback |
Public Member Functions | |
| DtCallbackQueue (unsigned maxTasks) | |
| CTOR. | |
| ~DtCallbackQueue () | |
| void | add (Callback) |
| Add a job to the queue. | |
| bool | pop (Callback &) |
| Pop a job from the queue, if it's empty block. | |
| bool | runOne () |
| Pop and run one job from front of queue. | |
Private Types | |
| typedef tbb::mutex | Mutex |
| typedef tbb::interface5::condition_variable | Condition |
| typedef tbb::interface5::unique_lock < Mutex > | Lock |
| typedef std::list < boost::shared_ptr < tbb::tbb_thread > > | ThreadList |
| typedef std::list< Callback > | CallbackList |
Private Member Functions | |
| void | execute () |
Private Attributes | |
| Mutex | myMutex |
| Condition | myCondition |
| bool | myShutdownFlag |
| ThreadList | myThreads |
| CallbackList | myCallbacks |
Simple asynchronous callback queue.
| typedef boost::function<void ()> DtCallbackQueue::Callback |
|
private |
|
private |
|
private |
|
private |
|
private |
|
explicit |
CTOR.
| maxTasks | max number of threads. |
| DtCallbackQueue::~DtCallbackQueue | ( | ) |
| void DtCallbackQueue::add | ( | Callback | ) |
Add a job to the queue.
Pop a job from the queue, if it's empty block.
| bool DtCallbackQueue::runOne | ( | ) |
Pop and run one job from front of queue.
|
private |
|
mutableprivate |
|
mutableprivate |
|
private |
|
private |
|
private |