SYNOPSIS
#include <nng/nng.h>
#include <nng/supplemental/util/platform.h>
void nng_cv_wake(nng_cv *cv);
DESCRIPTION
The nng_cv_wake()
wakes any threads waiting for the condition variable cv
to be signaled in the nng_cv_wait()
or
nng_cv_until()
functions.
The caller must have have ownership of the mutex that was used when cv was allocated.
The caller should already have set the condition that the waiters will check, while holding the mutex. |
This function wakes all threads, which is generally safer but can
lead to a problem known as the “thundering herd” when there are many
waiters, as they are all woken simultaneously.
See nng_cv_wake1() for a solution to this problem.
|
RETURN VALUES
None.
ERRORS
None.