Main Page   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members

FX::FXCondition Class Reference

A condition allows one or more threads to synchronize to an event. More...

#include <FXThread.h>

List of all members.

Public Member Functions

 FXCondition ()
FXbool wait (FXMutex &mtx)
FXbool wait (FXMutex &mtx, FXTime nsec)
void signal ()
void broadcast ()
 ~FXCondition ()


Detailed Description

A condition allows one or more threads to synchronize to an event.

When a thread calls wait, the associated mutex is unlocked while the thread is blocked. When the condition becomes signaled, the associated mutex is locked and the thread(s) are reawakened.


Constructor & Destructor Documentation

FX::FXCondition::FXCondition (  ) 

Initialize the condition.

FX::FXCondition::~FXCondition (  ) 

Delete the condition.


Member Function Documentation

FXbool FX::FXCondition::wait ( FXMutex mtx  ) 

Wait until condition becomes signalled, using given mutex, which must already have been locked prior to this call.

Return true if the wait ended due to the condition being signalled through signal() or broadcast(), and false if the wait was interrupted or some error occurred.

FXbool FX::FXCondition::wait ( FXMutex mtx,
FXTime  nsec 
)

Wait until condition becomes signalled, using given mutex, which must already have been locked prior to this call.

Return true if the wait ended due to the condition being signalled through signal() or broadcast(), and false if the wait timed out, was interrupted, or some other error occurred. The absolute time is specified in nanoseconds since the Epoch (Jan 1, 1970).

void FX::FXCondition::signal (  ) 

Wake or unblock a single blocked thread.

void FX::FXCondition::broadcast (  ) 

Wake or unblock all blocked threads.

Copyright © 1997-2009 Jeroen van der Zijp