Wake up a single thread
#include <pthread.h> int _sleepon_signal( sleepon_t * l, const volatile void * addr );
libc
Use the -l c option to qcc to link against this library. This library is usually included automatically.
The _sleepon_signal() and _sleepon_broadcast() functions are very similar:
The waiting threads must have used the same sleepon, l and key, addr, in order to be woken up.
To be woken up, the calling threads must have been locked by _sleepon_lock().
Safety: | |
---|---|
Cancellation point | No |
Interrupt handler | No |
Signal handler | No |
Thread | Yes |
pthread_sleepon_broadcast(), pthread_sleepon_signal(), _sleepon_broadcast(), _sleepon_destroy(), _sleepon_init(), _sleepon_lock(), _sleepon_unlock()