*** UNIX MANUAL PAGE BROWSER ***

A Nergahak database for man pages research.

Navigation

Directory Browser

1Browse 4.4BSD4.4BSD
1Browse Digital UNIXDigital UNIX 4.0e
1Browse FreeBSDFreeBSD 14.3
1Browse MINIXMINIX 3.4.0rc6-d5e4fc0
1Browse NetBSDNetBSD 10.1
1Browse OpenBSDOpenBSD 7.7
1Browse UNIX v7Version 7 UNIX
1Browse UNIX v10Version 10 UNIX

Manual Page Search

Manual Page Result

0 Command: sem_wait | Section: 3 | Source: Digital UNIX | File: sem_wait.3.gz
sem_wait(3) Library Functions Manual sem_wait(3) NAME sem_wait, sem_trywait - Perform (or conditionally perform) a semaphore lock (P1003.1b) SYNOPSIS #include <semaphore.h> int sem_wait ( sem_t *sem); int sem_trywait ( sem_t *sem); PARAMETERS sem Pointer to the semaphore to be locked. DESCRIPTION The sem_wait function locks the semaphore referenced by sem by perform- ing a semaphore lock operation on it. If the semaphore value is zero, the sem_wait function blocks until it either locks the semaphore or is interrupted by a signal. The sem_trywait function locks a semaphore only if the semaphore is currently not locked. If the semaphore value is zero, the sem_trywait function returns without locking the semaphore. These functions help ensure that the resource associated with the sema- phore cannot be accessed by other processes. The semaphore remains locked until the process unlocks it with a call to the sem_post func- tion. Use the sem_wait function instead of the sem_trywait function if the process should wait for access to the semaphore. RETURN VALUES If the sem_wait or sem_trywait function returns successfully, a value of 0 is returned and the function executes the semaphore lock opera- tion. On an unsuccessful call, a value of -1 is returned and errno is set to indicate that an error occurred. The state of the semaphore remains un- changed. ERRORS The sem_wait and sem_trywait functions fail under the following condi- tions: [EAGAIN] The semaphore was already locked, so it can not be imme- diately locked by the sem_trywait operation (sem_trywait only). [EINTR] A signal interrupted this function. [EINVAL] The sem argument does not refer to a valid semaphore. RELATED INFORMATION Functions: sem_post(3) delim off sem_wait(3)

Navigation Options