rwlock_destroy(3scl)rwlock_destroy(3scl)NAMErwlock_destroy - Destroys a readers/writer lock.
LIBRARY
SCL Threads Library (libthread.so)
SYNOPSIS
#include <synch.h>
int rwlock_destroy(
rwlock_t *rwlockp );
PARAMETERS
Address of the readers/writer lock object to be destroyed.
DESCRIPTION
This routine destroys the specified readers/writer lock by uninitializ‐
ing it, and should be called when a readers/writer lock object is no
longer referenced by any thread.
SCL IMPLEMENTATION NOTESrwlock_destroy(3scl) is implemented by calling tis_rwlock_destroy(3).
rwlock_destroy(3scl) first checks if the specified readers/writer lock
is valid: if it is valid, then tis_rwlock_destroy(3) is called; other‐
wise this routine just returns 0.
If tis_rwlock_destroy(3) returns EBUSY, indicating that the read‐
ers/writer lock is still in use, then rwlock_destroy(3scl) returns
EFAULT and logs an error-mapping message to the SCL errorlog. This be‐
haviour is different to that observed on Solaris, where
rwlock_destroy() returns 0 even if the readers/writer lock is still in
use.
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. Or:
Successful completion, even though the specified rwlock had not been
initialized. Error EBUSY from tis_rwlock_destroy(3), meaning that the
readers/writer lock is still in use. 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_rdlock(3scl), rw_tryrdlock(3scl), rw_trywrlock(3scl),
rw_unlock(3scl), rw_wrlock(3scl)rwlock_init(3scl), scl_intro(3scl),
scl_thread_intro(3scl), tis_rwlock_destroy(3)
Files: scl_error_log(4scl)
Manuals: Solaris Compatibility Libraries User's Guide
rwlock_destroy(3scl)