Unblock any threads that are waiting on a mutex
#include <pthread.h> int pthread_mutex_wakeup_np( pthread_mutex_t * mutex, pid_t pid, pthread_t tid );
libc
Use the -l c option to qcc to link against this library. This library is usually included automatically.
The pthread_mutex_wakeup_np() function unblocks any threads that are waiting on the specified mutex, provided that PTHREAD_WAKEUP_ENABLE is set in the mutex attributes (see pthread_mutexattr_setwakeup_np()). The “np” in these functions' names stands for “non-POSIX.”
The waiting threads' call to pthread_mutex_lock() for returns with an error code of EINTR, which is a non-POSIX return code for this function.
Safety: | |
---|---|
Cancellation point | No |
Interrupt handler | No |
Signal handler | Yes |
Thread | Yes |
pthread_mutex_lock(), pthread_mutexattr_getwakeup_np(), pthread_mutexattr_setwakeup_np()