nanomsg next generation NNG  
Home GitHub Documentation

This documentation is for version v1.1.0 of nng, but the latest released version is v1.7.2. see the documentation for v1.7.2 for the most up-to-date information.


#include <nng/nng.h>
#include <nng/supplemental/util/platform.h>

void nng_cv_wake1(nng_cv *cv);


The nng_cv_wake1() wakes at most one thread 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.
While this function avoids the “thundering herd” problem, the caller cannot predict which waiter will be woken, and so the design must ensure that it is sufficient that any waiter be woken. When in doubt, it is safer to use nng_cv_wake().





NNG Reference Manual vv1.1.0 © 2019 Staysail Systems, Inc, © 2018 Capitar IT Group BV
This document is supplied under the MIT License.
nanomsg™ and nng™ are trademarks of Garrett D'Amore.