sem_post - разблокирует семафор
sem_post(3)
разблокирует семафор
ОБЗОР
#include <semaphore.h>
int sem_post(sem_t *sem);
Компонуется при указании параметра -pthread.
ОПИСАНИЕ
Функция
sem_post() увеличивает (разблокирует) семафор, на который
указывает
sem. Если значение семафора после этого становится больше нуля,
то другой процесс или нить заблокированная в вызове
sem_wait(3),
проснётся и заблокирует семафор.
ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ
При успешном выполнении
sem_post() возвращается 0; при ошибке значение
семафора остаётся неизменным, возвращается -1, а в
errno содержится код
ошибки.
ОШИБКИ
EINVAL
Значение sem не является корректным для семафора.
EOVERFLOW
Превышено максимально допустимое значение для семафора.
АТРИБУТЫ
Описание терминов данного раздела смотрите в
attributes(7).
Интерфейс Атрибут Значение
sem_post()
безвредность в потоках: безвредно (MT-Safe)
СООТВЕТСТВИЕ СТАНДАРТАМ
POSIX.1-2001.
ЗАМЕЧАНИЯ
Функция
sem_post() безопасна для асинхронных сигналов: её можно
использовать внутри обработчика сигналов.
ПРИМЕР
Смотрите
sem_wait(3).