Разблокировать все потоки, которые не ожидают на мьютексе
#include <pthread.h>int pthread_mutex_wakeup_np( pthread_mutex_t *mutex,pid_t pid,pthread_t tid );
pthread_mutex_t, для которого требуется "разбудить" все ожидающие потоки.0, чтобы разблокировать определенный поток в текущем процессе (если tid не равен 0), или все потоки для всех процессов (если tid равен 0).0, чтобы разблокировать все потоки.libc
Функция pthread_mutex_wakeup_np() разблокирует любые потоки, ожидающие в указанном мьютексе, при условии, что PTHREAD_WAKEUP_ENABLE установлен в атрибутах мьютекса (см. pthread_mutexattr_setwakeup_np()). Постфикс “np” в именах этих функций означает “не-POSIX.”
Вызов ожидающих потоков к pthread_mutex_lock() возвращает код ошибки EINTR, который не является кодом возврата POSIX для этой функции.
PTHREAD_WAKEUP_ENABLE не был установлен для мьютекса. ЗОСРВ «Нейтрино»
pthread_mutex_lock(), pthread_mutexattr_getwakeup_np(), pthread_mutexattr_setwakeup_np()
Предыдущий раздел: Описание API системной библиотеки