for connected embedded systems
![]() |
![]() |
![]() |
![]() |
pthread_rwlock_wrlock()
Acquire an exclusive write lock on a read-write lock
Synopsis:
#include <pthread.h>
int pthread_rwlock_wrlock(
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_wrlock() function acquires an exclusive lock on the read-write lock referenced by rwl. If the read-write lock is already shared-locked by any thread (including the calling thread) or exclusively-locked by any thread (other than the calling thread), the calling thread blocks until all shared locks and exclusive locks are released.
If a signal is delivered to a thread waiting to lock a read-write lock, it resumes waiting for the lock after returning from the signal handler.
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.
- 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:
| 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_tryrdlock(), pthread_rwlock_trywrlock(), pthread_rwlock_unlock()
Processes and Threads chapter of Getting Started with QNX Neutrino
![]() |
![]() |
![]() |
![]() |

![[Previous]](../prev.gif)
![[Contents]](../contents.gif)
![[Index]](../keyword_index.gif)
![[Next]](../next.gif)