Copyright (C) 2006 Michael Kerrisk <email@example.com> %%%LICENSE_START(VERBATIM) Permission is granted to make and distribute verbatim copies of this manual provided the copyright notice and this permission notice are preserved on all copies. Permission is granted to copy and distribute modified versions of this manual under the conditions for verbatim copying, provided that the entire resulting derived work is distributed under the terms of a permission notice identical to this one. ...
NAMEsem_post - unlock a semaphore
#include <semaphore.h> int sem_post(sem_t *sem);
Link with -pthread.
DESCRIPTIONsem_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 VALUEsem_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.
- sem is not a valid semaphore.
- The maximum allowable value for a semaphore would be exceeded.
ATTRIBUTESFor an explanation of the terms used in this section, see attributes(7).