8 #ifndef META_OCEAN_BASE_TASK_QUEUE_H
9 #define META_OCEAN_BASE_TASK_QUEUE_H
This class implements a recursive lock object.
Definition: Lock.h:31
This template class is the base class for all singleton objects.
Definition: Singleton.h:71
This class implements a queue for tasks.
Definition: TaskQueue.h:31
virtual void threadRun()
The thread run function.
size_t pendingTasks()
Returns the number of tasks currently in the queue (not counting an currently invoked task).
Tasks queueTasks
The tasks if this queue.
Definition: TaskQueue.h:88
Lock queueLock
The lock of this queue.
Definition: TaskQueue.h:94
void pushTask(const Task &task)
Adds a new tasks to the queue which will be invoked after all previous task have been invoked.
bool queueHadTask
True, if at least one task has been added to this queue before.
Definition: TaskQueue.h:91
std::queue< Task > Tasks
Definition of a queue holding tasks.
Definition: TaskQueue.h:46
Caller< void > Task
Definition of a task as caller function.
Definition: TaskQueue.h:39
void clear()
Removes all pending tasks from this queue.
TaskQueue()
Creates a new task queue object.
~TaskQueue()
Destructs a task queue object.
This class implements a thread.
Definition: Thread.h:115
The namespace covering the entire Ocean framework.
Definition: Accessor.h:15