Waits on the condition variable.
#include nks/synch.h> int NXCondWait ( NXCond_t *cond, NXMutex_t *mutex);
(IN) Points to the condition variable to wait on.
(IN) Points to a mutually exclusive lock held by the calling thread.
If successful, returns zero; otherwise, returns an nonzero error code:
NXCondWait atomically releases the entry lock pointed to by mutex and blocks the calling thread. When the condition is signaled, NXCondWait reacquires the mutex and returns.
NOTE:It is the responsibility of the calling thread to re-evaluate the entry condition when NXCondWait returns. The condition may have been consumed by a different thread between the time when a blocked thread within NXCondWait awakens and when it acquires the entry mutex.
The wait can also be interrupted, in which case NXCondWait returns NX_EINTR. In this case, the entry lock is not held when NXCondWait returns.
For sample code, see CondVar.c.