NNG_CV_WAKE(3supp)

NAME
nng_cv_wake - wake all waiters

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.

    Note

    The caller should already have set the condition that the waiters will check, while holding the mutex.

    Tip

    This function wakes all threads, which is generally safer but can lead to a performance problem when there are many waiters, as they are all woken simultaneously and may contend for resources. See nng_cv_wake1() for a solution to this problem.

RETURN VALUES

None.

ERRORS

None.

SEE ALSO

nng_cv_alloc(3supp), nng_cv_until(3supp), nng_cv_wait(3supp), nng_cv_wake1(3supp), nng_mtx_alloc(3supp), nng_mtx_lock(3supp), nng_mtx_unlock(3supp), nng(7)