Разблокировать любые потоки, которые ожидают на мьютексе
#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 системной библиотеки