pthread_rwlock_trywrlock()

Attempt to acquire an exclusive lock on a read-write lock

Synopsis:

#include <pthread.h>

int pthread_rwlock_trywrlock( 
                      pthread_rwlock_t* rwl );

Arguments:

rwl
A pointer to a pthread_rwlock_t object that you want to lock for writing.

Library:

libc

Use the -l c option to qcc to link against this library. This library is usually included automatically.

Description:

The pthread_rwlock_trywrlock() function attempts to acquire an exclusive lock on the read-write lock referenced by rwl. If the read-write lock is already exclusively locked or shared locked, the function returns immediately instead of blocking until an exclusive lock can be obtained.

The function may need to block to determine the state of the read-write lock.

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 or read 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:

POSIX 1003.1

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