Warning: main(/www/www/htdocs/style/globals.php) [function.main]: failed to open stream: No such file or directory in /www/www/docs/6.4.1/neutrino/lib_ref/p/pthread_rwlock_rdlock.html on line 1
Warning: main() [function.include]: Failed opening '/www/www/htdocs/style/globals.php' for inclusion (include_path='.:/www/www/common:/www/www/php/lib/php') in /www/www/docs/6.4.1/neutrino/lib_ref/p/pthread_rwlock_rdlock.html on line 1
Warning: main(/www/www/htdocs/style/header.php) [function.main]: failed to open stream: No such file or directory in /www/www/docs/6.4.1/neutrino/lib_ref/p/pthread_rwlock_rdlock.html on line 8
Warning: main() [function.include]: Failed opening '/www/www/htdocs/style/header.php' for inclusion (include_path='.:/www/www/common:/www/www/php/lib/php') in /www/www/docs/6.4.1/neutrino/lib_ref/p/pthread_rwlock_rdlock.html on line 8
Acquire a shared read lock on a read-write lock
#include <pthread.h>
int pthread_rwlock_rdlock( pthread_rwlock_t* rwl );
- rwl
- A pointer to a pthread_rwlock_t object that you want to
lock for reading.
libc
Use the -l c option to
qcc
to link against this library.
This library is usually included automatically.
The pthread_rwlock_rdlock() function acquires a shared lock on the
read-write lock referenced by rwl. If the read-write lock
is already exclusively locked, the calling thread blocks until the
exclusive lock is released.
If a signal is delivered to a thread waiting to lock a read-write lock, it
will resume waiting for the lock after returning from the signal handler.
A thread may hold several read locks on the same read-write lock; it must
call
pthread_rwlock_unlock()
multiple times to release its read lock.
- EOK
- Success.
- EAGAIN
- On the first use of 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.
POSIX 1003.1 THR
Safety: | |
Cancellation point |
Yes |
Interrupt handler |
No |
Signal handler |
Yes |
Thread |
Yes |
pthread_rwlock_destroy(),
pthread_rwlock_init(),
pthread_rwlock_tryrdlock(),
pthread_rwlock_trywrlock(),
pthread_rwlock_unlock(),
pthread_rwlock_wrlock()
Processes and Threads
chapter of Getting Started with QNX Neutrino
Warning: main(/www/www/htdocs/style/footer.php) [function.main]: failed to open stream: No such file or directory in /www/www/docs/6.4.1/neutrino/lib_ref/p/pthread_rwlock_rdlock.html on line 157
Warning: main() [function.include]: Failed opening '/www/www/htdocs/style/footer.php' for inclusion (include_path='.:/www/www/common:/www/www/php/lib/php') in /www/www/docs/6.4.1/neutrino/lib_ref/p/pthread_rwlock_rdlock.html on line 157