#include <thread.h>
Inheritance diagram for ost::Conditional:
Public Member Functions | |
Conditional (const char *id=NULL) | |
Create an instance of a conditional. | |
virtual | ~Conditional () |
Destroy the conditional. | |
void | signal (bool broadcast) |
Signal a conditional object and a waiting threads. | |
bool | wait (timeout_t timer=0, bool locked=false) |
Wait to be signaled from another thread. | |
void | enterMutex (void) |
Locks the conditional's mutex for this thread. | |
void | lock (void) |
In the future we will use lock in place of enterMutex since the conditional composite is not a recursive mutex, and hence using enterMutex may cause confusion in expectation with the behavior of the Mutex class. | |
bool | tryEnterMutex (void) |
Tries to lock the conditional for the current thread. | |
bool | test (void) |
void | leaveMutex (void) |
Leaving a mutex frees that mutex for use by another thread. | |
void | unlock (void) |
Conditional variables may wait for and receive signals to notify when to resume or perform operations. Multiple waiting threads may be woken with a broadcast signal.
|
Create an instance of a conditional.
|
|
Destroy the conditional.
|
|
Locks the conditional's mutex for this thread. Remember that Conditional's mutex is NOT a recursive mutex!
|
|
Leaving a mutex frees that mutex for use by another thread.
|
|
In the future we will use lock in place of enterMutex since the conditional composite is not a recursive mutex, and hence using enterMutex may cause confusion in expectation with the behavior of the Mutex class.
|
|
Signal a conditional object and a waiting threads.
|
|
|
|
Tries to lock the conditional for the current thread. Behaves like enterMutex , except that it doesn't block the calling thread.
|
|
|
|
Wait to be signaled from another thread.
|