rw_rdlock(3scl)rw_rdlock(3scl)NAMErw_rdlock - Locks a readers/writer lock for read access.
LIBRARY
SCL Threads Library (libthread.so)
SYNOPSIS
#include <synch.h>
int rw_rdlock(
rwlock_t *rwlockp );
PARAMETERS
Address of the readers/writer lock to be read-locked.
DESCRIPTION
This routine locks a readers/writer lock for read access. If the read‐
ers/writer lock is already locked for write access by another thread,
this routine blocks until the write lock is released and subsequently
acquired by this thread. If the readers/writer lock is unlocked or
already locked for read access (by another thread), then the read lock
is acquired.
SCL IMPLEMENTATION NOTESrw_rdlock(3scl) is implemented by calling tis_read_lock(3).
rw_rdlock(3scl) first checks if the readers/writer lock is valid: if it
is not, then the readers/writer lock is initialized for intra-process
thread synchronization (type USYNC_THREAD).
RETURN VALUES
If an error condition occurs, this routine returns an integer value
indicating the type of error.
Additional error return information may be written to the SCL error
log. Refer to scl_error_log(4scl) for details.
Possible return values are as follows: Successful completion. Error
from tis_rwlock_init(3) or tis_read_lock(3). A message is written to
the SCL errorlog which outlines the error-code mapping. Or:
An internal implementation error occurred. Refer to the SCL errorlog
for additional information.
Note: EFAULT is not returned if rwlockp is an illegal address. An ille‐
gal address generates a SIGSEGV signal, which by default will abort the
process and generate a core dump.
ERRORS
None.
RELATED INFORMATION
Functions: rw_tryrdlock(3scl), rw_trywrlock(3scl), rw_unlock(3scl),
rw_wrlock(3scl), rwlock_destroy(3scl), rwlock_init(3scl),
scl_intro(3scl), scl_thread_intro(3scl), tis_rwlock_init(3),
tis_read_lock(3)
Files: scl_error_log(4scl)
Manuals: Solaris Compatibility Libraries User's Guide
rw_rdlock(3scl)