January 30, 2003 PTHREAD_RWLOCK_UNLOCK 3

### NAME

pthread_rwlock_unlock - release a read/write lock

### LIBRARY

POSIX Thread Library (libpthread, -lpthread)

### SYNOPSIS

```int` pthread_rwlock_unlock(```pthread_rwlock_t *lock`)

### DESCRIPTION

The pthread_rwlock_unlock(``) function is used to release the read/write lock previously obtained by pthread_rwlock_rdlock(``), pthread_rwlock_wrlock(``), pthread_rwlock_tryrdlock(``), or pthread_rwlock_trywrlock(``).

### RETURN VALUES

If successful, the pthread_rwlock_unlock(``) function will return zero. Otherwise an error number will be returned to indicate the error.

The results are undefined if ```lock` is not held by the calling thread.

### ERRORS

The pthread_rwlock_unlock(``) function may fail if:

[```EINVAL`]
  The value specified by ```lock` is invalid.

[```EPERM`]
  The current thread does not own the read/write lock.

### SEE ALSO

pthread_rwlock_destroy(3), pthread_rwlock_init(3), pthread_rwlock_rdlock(3), pthread_rwlock_wrlock(3)

### STANDARDS

pthread_rwlock_unlock(``) conforms to ISO/IEC 9945-1:1996 (``POSIX.1'') .