ACE 8.0.1
|
ACE_Condition template specialization written using ACE_Recursive_Thread_Mutex. This allows threads to block until shared data changes state using recursive mutexes. More...
#include <Condition_Recursive_Thread_Mutex.h>
Public Member Functions | |
ACE_Condition (ACE_Recursive_Thread_Mutex &m) | |
Initialize the condition variable with a recursive mutex. | |
ACE_Condition (ACE_Recursive_Thread_Mutex &m, const ACE_Condition_Attributes &attributes) | |
Initialize the condition variable. | |
~ACE_Condition () | |
Implicitly destroy the condition variable. | |
int | remove () |
int | wait (const ACE_Time_Value *abstime=0) |
int | wait (ACE_Recursive_Thread_Mutex &mutex, const ACE_Time_Value *abstime=0) |
int | signal () |
Signal one waiting thread. | |
int | broadcast () |
Signal all waiting threads. | |
ACE_Recursive_Thread_Mutex & | mutex () |
Returns a reference to the underlying mutex;. | |
void | dump () const |
Dump the state of an object. | |
Private Member Functions | |
void | operator= (const ACE_Condition< ACE_Recursive_Thread_Mutex > &)=delete |
ACE_Condition (const ACE_Condition< ACE_Recursive_Thread_Mutex > &)=delete | |
Private Attributes | |
ACE_cond_t | cond_ |
A normal (i.e., non-recursive) condition variable. | |
ACE_Recursive_Thread_Mutex & | mutex_ |
Reference to the recursive mutex. | |
ACE_Condition template specialization written using ACE_Recursive_Thread_Mutex. This allows threads to block until shared data changes state using recursive mutexes.
Initialize the condition variable with a recursive mutex.
ACE_Condition< ACE_Recursive_Thread_Mutex >::ACE_Condition | ( | ACE_Recursive_Thread_Mutex & | m, |
const ACE_Condition_Attributes & | attributes ) |
Initialize the condition variable.
Implicitly destroy the condition variable.
|
privatedelete |
int ACE_Condition< ACE_Recursive_Thread_Mutex >::broadcast | ( | ) |
Signal all waiting threads.
void ACE_Condition< ACE_Recursive_Thread_Mutex >::dump | ( | ) | const |
Dump the state of an object.
ACE_Recursive_Thread_Mutex & ACE_Condition< ACE_Recursive_Thread_Mutex >::mutex | ( | ) |
Returns a reference to the underlying mutex;.
|
privatedelete |
int ACE_Condition< ACE_Recursive_Thread_Mutex >::remove | ( | ) |
Explicitly destroy the condition variable. Note that only one thread should call this method since it doesn't protect against race conditions.
int ACE_Condition< ACE_Recursive_Thread_Mutex >::signal | ( | ) |
Signal one waiting thread.
int ACE_Condition< ACE_Recursive_Thread_Mutex >::wait | ( | ACE_Recursive_Thread_Mutex & | mutex, |
const ACE_Time_Value * | abstime = 0 ) |
Block on condition or until absolute time-of-day has passed. If abstime == 0 use "blocking" wait() semantics on the recursive mutex passed as a parameter (this is useful if you need to store the <Condition> in shared memory). Else, if abstime != 0 and the call times out before the condition is signaled <wait> returns -1 and sets errno to ETIME.
int ACE_Condition< ACE_Recursive_Thread_Mutex >::wait | ( | const ACE_Time_Value * | abstime = 0 | ) |
Block on condition, or until absolute time-of-day has passed. If abstime == 0 use "blocking" <wait> semantics. Else, if abstime != 0 and the call times out before the condition is signaled <wait> returns -1 and sets errno to ETIME.
|
private |
A normal (i.e., non-recursive) condition variable.
|
private |
Reference to the recursive mutex.