*** 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: pthread_rwlock_timedrdlock | Section: 3 | Source: FreeBSD | File: pthread_rwlock_timedrdlock.3.gz
PTHREAD_RWLOCK_TIMEDRDLOCK(3) FreeBSD Library Functions Manual NAME pthread_rwlock_timedrdlock - acquire a read-write lock for reading or give up after a specified period LIBRARY POSIX Threads Library (libpthread, -lpthread) SYNOPSIS #include <pthread.h> int pthread_rwlock_timedrdlock(pthread_rwlock_t *restrict rwlock, const struct timespec *restrict abs_timeout); DESCRIPTION This function acquires a read lock on the read-write lock rwlock. However, if the lock cannot be acquired without waiting for another thread to unlock the lock, this wait shall be terminated when abs_timeout expires. A thread may hold multiple concurrent read locks. The pthread_rwlock_unlock(3) function must be called once for each lock acquired. If the thread should be interrupted by a signal, the pthread_rwlock_timedrdlock() function will be automatically restarted after the thread returns from the signal handler. The calling thread may deadlock if at the time the call is made it holds a write lock on rwlock. The results are undefined if this function is called with an uninitialized read-write lock. IMPLEMENTATION NOTES To prevent writer starvation, writers are favored over readers. RETURN VALUES If successful, the pthread_rwlock_timedrdlock() function will return zero. Otherwise, an error number will be returned to indicate the error. This function shall not return an error code of EINTR. ERRORS The pthread_rwlock_timedrdlock() function will fail if: [ETIMEDOUT] The lock could not be acquired before the specified timeout expired. The pthread_rwlock_timedrdlock() function may fail if: [EAGAIN] The read lock could not be acquired because the maximum number of read locks for rwlock would be exceeded. [EDEADLK] The calling thread already holds a write lock on rwlock. [EINVAL] The value specified by rwlock does not refer to an initialized read-write lock object, or the abs_timeout nanosecond value is less than zero or greater than or equal to 1 billion. SEE ALSO pthread_rwlock_init(3), pthread_rwlock_timedwrlock(3), pthread_rwlock_unlock(3) STANDARDS The pthread_rwlock_timedrdlock() function is expected to conform to ISO/IEC 9945-1:1996 ("POSIX.1"). HISTORY The pthread_rwlock_timedrdlock() function first appeared in FreeBSD 5.2. FreeBSD 14.1-RELEASE-p8 August 17, 2018 FreeBSD 14.1-RELEASE-p8

Navigation Options