[Previous] [Contents] [Next]

pthread_rwlock_tryrdlock()

Attempt to acquire a shared lock on a read-write lock

Synopsis:

#include <pthread.h>

int pthread_rwlock_tryrdlock( 
                   pthread_rwlock_t* rwl );

Library:

libc

Description:

The pthread_rwlock_tryrdlock() function attempts to acquire a shared lock on the read-write lock referenced by rwl. If the read-write lock is already exclusively locked by any thread (including the calling thread), the function returns immediately instead of blocking until a read lock can be obtained.

Returns:

EOK
Success.
EAGAIN
On the first use of a statically initialized read-write lock, insufficient system resources existed to initialize the read-write lock.
EBUSY
The read-write lock was already write locked.
EDEADLK
The calling thread already has an exclusive lock for rwl.
EFAULT
A fault occurred when the kernel tried to access rwl.
EINVAL
The read-write lock rwl is invalid.

Classification:

Standard Unix

Safety:
Cancellation point Yes
Interrupt handler No
Signal handler Yes
Thread Yes

See also:

pthread_rwlock_destroy(), pthread_rwlock_init(), pthread_rwlock_rdlock(), pthread_rwlock_trywrlock(), pthread_rwlock_unlock(), pthread_rwlock_wrlock()


[Previous] [Contents] [Next]