Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
PTHREAD_RWLOCK_WRLO... FreeBSD Library Functions Manual	PTHREAD_RWLOCK_WRLO...

NAME
     pthread_rwlock_wrlock, pthread_rwlock_timedwrlock,
     pthread_rwlock_trywrlock -- acquire a read/write lock for writing

SYNOPSIS
     #include <pthread.h>

     int
     pthread_rwlock_wrlock(pthread_rwlock_t *lock);

     int
     pthread_rwlock_timedwrlock(pthread_rwlock_t *lock,
	 const struct timespec *abstime);

     int
     pthread_rwlock_trywrlock(pthread_rwlock_t *lock);

DESCRIPTION
     The pthread_rwlock_wrlock() function blocks until a write lock can	be ac-
     quired against lock.

     The pthread_rwlock_timedwrlock() function performs	the same action, but
     will not wait beyond abstime to obtain the	lock before returning.

     The pthread_rwlock_trywrlock() function performs the same action as
     pthread_rwlock_wrlock(), but does not block if the	lock cannot be immedi-
     ately obtained.

     The results are undefined if the calling thread already holds the lock at
     the time the call is made.

RETURN VALUES
     If	successful, the	pthread_rwlock_wrlock(), pthread_rwlock_timedwrlock(),
     and pthread_rwlock_trywrlock() functions will return zero.	 Otherwise an
     error number will be returned to indicate the error.

ERRORS
     The pthread_rwlock_trywrlock() function will fail if:

     [EBUSY]		The calling thread is not able to acquire the lock
			without	blocking.

     The pthread_rwlock_timedwrlock() function will fail if:

     [ETIMEDOUT]	The time specified by abstime was reached before the
			lock could be obtained.

     The pthread_rwlock_wrlock(), pthread_rwlock_timedwrlock(),	and
     pthread_rwlock_trywrlock()	functions may fail if:

     [EDEADLK]		The calling thread already owns	the read/write lock
			(for reading or	writing).

     [EINVAL]		The value specified by lock is invalid.

     [ENOMEM]		Insufficient memory exists to initialize the lock (ap-
			plies to statically initialized	locks only).

SEE ALSO
     pthread_rwlock_unlock(3)

STANDARDS
     The pthread_rwlock_wrlock(), pthread_rwlock_timedwrlock(),	and
     pthread_rwlock_trywrlock()	functions are expected to conform to Version 2
     of	the Single UNIX	Specification ("SUSv2").

HISTORY
     The pthread_rwlock_wrlock() function first	appeared in FreeBSD 3.0	and
     OpenBSD 2.5.  The pthread_rwlock_timedwrlock() function first appeared in
     OpenBSD 4.8.

FreeBSD	13.0		       February	13, 2019		  FreeBSD 13.0

NAME | SYNOPSIS | DESCRIPTION | RETURN VALUES | ERRORS | SEE ALSO | STANDARDS | HISTORY

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=pthread_rwlock_wrlock&sektion=3&manpath=OpenBSD+6.9>

home | help