Initializes a read-write lock object.
1 – C Binding
#include <tis.h>
int
tis_rwlock_init (
tis_rwlock_t *lock);
2 – Arguments
lock
Address of a read-write lock object.
3 – Description
This routine initializes a read-write lock object. The routine
initializes the tis_rwlock_t structure that holds the object's
lock states.
To destroy a read-write lock object, call the tis_rwlock_
destroy() routine.
NOTE
The tis read-write lock has no relationship to the Single
UNIX Specification, Version 2 (SUSV2, or UNIX98) read-
write lock routines (such as pthread_rwlock_init()). The
tis_rwlock_t type, in particular, cannot be used with the
pthread read-write lock functions, nor can a pthread_rwlock_
t type be used with the tis read-write lock functions.
4 – Return Values
If an error condition occurs, this routine returns an integer
value indicating the type of error. Possible return values are as
follows:
Return Description
0 Successful completion.
[EINVAL] The value specified by lock is not a valid read-write
lock.
[ENOMEM] Insufficient memory to initialize lock.
5 – Associated Routines
tis_read_lock()
tis_read_trylock()
tis_read_unlock()
tis_rwlock_destroy()
tis_write_lock()
tis_write_trylock()
tis_write_unlock()