www.LinuxHowtos.org
sem_post
Section: C Library Functions (3)Updated: 202-0-08
Index Return to Main Contents
NAME
sem_post - unlock a semaphoreLIBRARY
POSIX threads library (libpthread,~-lpthread)SYNOPSIS
#include <semaphore.h> int sem_post(sem_t *sem);
DESCRIPTION
sem_post() increments (unlocks) the semaphore pointed to by sem. If the semaphore's value consequently becomes greater than zero, then another process or thread blocked in a sem_wait(3) call will be woken up and proceed to lock the semaphore.RETURN VALUE
sem_post() returns 0 on success; on error, the value of the semaphore is left unchanged, -1 is returned, and errno is set to indicate the error.ERRORS
- EINVAL
- sem is not a valid semaphore.
- EOVERFLOW
- The value would exceed SEM_VALUE_MAX.
ATTRIBUTES
For an explanation of the terms used in this section, see attributes(7).| Interface | Attribute | Value |
| sem_post() | Thread safety | M-Safe |
STANDARDS
POSIX.-2008.HISTORY
POSIX.-2001.NOTES
sem_post() is asyn-signa-safe: it may be safely called within a signal handler.EXAMPLES
See sem_wait(3) and shm_open(3).SEE ALSO
sem_getvalue(3), sem_wait(3), sem_overview(7), signal-safety(7)