rw_tryrdlock(3scl)rw_tryrdlock(3scl)NAMErw_tryrdlock - Tries to lock a readers/writer lock for read access.
LIBRARY
SCL Threads Library (libthread.so)
SYNOPSIS
#include <synch.h>
int rw_tryrdlock(
rwlock_t *rwlockp );
PARAMETERS
Address of the readers/writer lock to try to read-lock.
DESCRIPTION
This routine tries to lock a readers/writer lock for read access. If
the readers/writer lock is already locked for write access, this rou‐
tine returns EBUSY. Otherwise if 0 is returned, the readers/writer lock
is acquired for read access.
SCL IMPLEMENTATION NOTESrw_tryrdlock(3scl) is implemented by calling tis_read_trylock(3).
rw_tryrdlock(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. The
readers/writer lock is already locked (by another thread) for write
access. Error from tis_rwlock_init(3) or tis_read_trylock(3). A mes‐
sage is written to the SCL errorlog which outlines the error-code map‐
ping. 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_rdlock(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_trylock(3)
Files: scl_error_log(4scl)
Manuals: Solaris Compatibility Libraries User's Guide
rw_tryrdlock(3scl)