NAME
sem_post —
increment (unlock) a
semaphore
LIBRARY
POSIX Real-time Library (librt, -lrt)
SYNOPSIS
#include <semaphore.h>
int
sem_post(
sem_t
*sem);
DESCRIPTION
The
sem_post() function increments (unlocks) the semaphore
pointed to by
sem. If there are threads blocked on the
semaphore when
sem_post() is called, then the highest
priority thread that has been blocked the longest on the semaphore will be
allowed to return from
sem_wait() or
sem_timedwait().
sem_post() is signal-reentrant and may be called within signal
handlers.
RETURN VALUES
The
sem_post() function returns the value 0 if
successful; otherwise the value -1 is returned and the global variable
errno is set to indicate the error.
ERRORS
sem_post() will fail if:
-
-
- [
EINVAL
]
- sem points to an invalid
semaphore.
SEE ALSO
sem_timedwait(3),
sem_trywait(3),
sem_wait(3)
STANDARDS
sem_post() conforms to
ISO/IEC 9945-1:1996
(“POSIX.1”).