Cyg_Condition_Variable::Cyg_Condition_Variable
Name: Cyg_Condition_Variable::Cyg_Condition_Variable ( ) - create a condition variable
Synopsis:
Cyg_Condition_Variable::Cyg_Condition_Variable
(
  Cyg_Mutex &mutex /* associated mutex */
)
Description: Creates a condition variable.
Include: #include <cyg/kernel/mutex.hxx>
Returns: nothing
See Also: Cyg_Condition_Variable::~Cyg_Condition_Variable

Cyg_Condition_Variable::~Cyg_Condition_Variable
Name: Cyg_Condition_Variable::~Cyg_Condition_Variable ( ) - destroy condition variable
Synopsis:
Cyg_Condition_Variable::~Cyg_Condition_Variable
(
  void
)
Description: This destroys a condition variable. Be careful not do destroy a condition variable that is currently in use. The mutex associated with the condition variable needs to be destroyed seperately.
Include: #include <cyg/kernel/mutex.hxx>
Returns: nothing
See Also: Cyg_Condition_Variable::Cyg_Condition_Variable

Cyg_Condition_Variable::signal
Name: Cyg_Condition_Variable::signal ( ) - wake one thread waiting on condition variable
Synopsis:
void Cyg_Condition_Variable::signal
(
  void
)
Description: Wakes a thread waiting on a condition variable. If multiple threads are waiting on the thread, which one wakes up depends on which scheduler is being used. The mlqueue scheduler is the most often, this would mean that the thread with the highest priority will wake.
Include: #include <cyg/kernel/mutex.hxx>
Returns: nothing
See Also: Cyg_Condition_Variable::broadcast, Cyg_Condition_Variable::wait

Cyg_Condition_Variable::broadcast
Name: Cyg_Condition_Variable::broadcast ( ) - wake all threads waiting on condition variable
Synopsis:
void Cyg_Condition_Variable::broadcast
(
  void
)
Description: This wakes all threads waiting on the condition variable.
Include: #include <cyg/kernel/mutex.hxx>
Returns: nothing
See Also: Cyg_Condition_Variable::signal, Cyg_Condition_Variable::wait

Cyg_Condition_Variable::wait
Name: Cyg_Condition_Variable::wait ( ) - wait on a condition variable
Synopsis:
cyg_bool Cyg_Condition_Variable::wait
(
  void
)
Description: This causes the calling thread to wait on a condition variable. It will wait forever.
Include: #include <cyg/kernel/mutex.hxx>
Returns: "true" if the thread was awakened normally, "false" if the thread was awakened by a Cyg_Thread::BREAK or Cyg_Thread::DESTRUCT signal.
See Also: Cyg_Condition_Variable::signal, Cyg_Condition_Variable::broadcast

Cyg_Condition_Variable::wait
Name: Cyg_Condition_Variable::wait ( ) - wait until an absolute time on a condition variable
Synopsis:
cyg_bool Cyg_Condition_Variable::wait
(
  cyg_tick_count absolute_time /* absolute time */
)
Description: This causes the calling thread to wait on a condition variable for until the system reaches the absolute time specified or until the condition variable is available, whichever comes first.
Include: #include <cyg/kernel/mutex.hxx>
Returns: "true" if the thread was awakened normally, "false" if the thread timed out waiting on the condition variable or if the thread was awakened by a Cyg_Thread::BREAK or Cyg_Thread::DESTRUCT signal.
See Also: Cyg_Condition_Variable::signal, Cyg_Condition_Variable::broadcast

Cyg_Condition_Variable::wait
Name: Cyg_Condition_Variable::wait ( ) - wait on a condition variable
Synopsis:
cyg_bool Cyg_Condition_Variable::wait
(
  Cyg_Mutex &mx  /* other mutex to use */
)
Description: This causes the calling thread to wait on a condition variable but uses another mutex instead of the mutex that was associated with this condition variable on creation.

It is probably not a good idea to use this

Include: #include <cyg/kernel/mutex.hxx>
Returns: "true" if the thread was awakened normally, "false" if the thread was awakened by a Cyg_Thread::BREAK or Cyg_Thread::DESTRUCT signal.
See Also: Cyg_Condition_Variable::signal, Cyg_Condition_Variable::broadcast

Cyg_Condition_Variable::wait
Name: Cyg_Condition_Variable::wait ( ) - wait until an absolute time on a condition variable
Synopsis:
cyg_bool Cyg_Condition_Variable::wait
(
  Cyg_Mutex      &mx,          /* other mutex to use */
  cyg_tick_count absolute_time /* absolute time      */
)
Description: This causes the calling thread to wait on a condition variable for until the system reaches the absolute time specified or until the condition variable is available, whichever comes first. This uses another mutex instead of the mutex that was associated with this condition variable on creation.

It is probably not a good idea to use this

Include: #include <cyg/kernel/mutex.hxx>
Returns: "true" if the thread was awakened normally, "false" if the thread timed out waiting on the condition variable or if the thread was awakened by a Cyg_Thread::BREAK or Cyg_Thread::DESTRUCT signal.
See Also: Cyg_Condition_Variable::signal, Cyg_Condition_Variable::broadcast