|
| Waitingroom () |
| Constructor.
|
|
virtual | ~Waitingroom () |
| Destructor.
|
|
virtual void | remove (Thread *customer) |
| Remove a given thread prematurely from the Waitingroom.
|
|
| Queue () |
| Default constructor; initialized the queue as empty.
|
|
void | enqueue (T *item) |
| Enqueues the provided item at the end of the queue.
|
|
T * | dequeue () |
| Removes the first element in the queue and returns it.
|
|
Iterator | begin () |
|
Iterator | end () |
|
T * | remove (T *item, bool(*cmp)(T *, T *)=[](T *a, T *b) {return a==b;}) |
| Removes and returns a single element from the queue.
|
|
void | insertFirst (T *item) |
| Adds item to the beginning of the queue.
|
|
void | insertAfter (T *old_item, T *new_item) |
| Inserts the element new_item directly after old_item .
|
|
T * | first () |
| Returns the first element in the queue without removing it.
|
|
T * | next (T *o) |
| Returns the next element in the queue for a given element.
|
|
List of threads waiting for an event.
The class Waitingroom implements a list of threads that all wait for one particular event.
The destructor should be virtual to properly cleanup derived classes.