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

FreeBSD Manual Pages

  
 
  

home | help
PTHREAD_MUTEX_TIMEDLO... BSD Library Functions Manual PTHREAD_MUTEX_TIMEDLO...

NAME
     pthread_mutex_timedlock --	lock a mutex without blocking indefinitely

LIBRARY
     POSIX Threads Library (libpthread,	-lpthread)

SYNOPSIS
     #include <pthread.h>
     #include <time.h>

     int
     pthread_mutex_timedlock(pthread_mutex_t *restrict mutex,
	 const struct timespec *restrict abs_timeout);

DESCRIPTION
     The pthread_mutex_timedlock() function will lock mutex.  If it is already
     locked the	calling	thread will block until	the mutex becomes available or
     the timeout, specified by abs_timeout, expires.  The time of the timeout
     is	an absolute time and is	not relative to	the current time.

RETURN VALUES
     If	successful, pthread_mutex_timedlock() will return zero,	otherwise an
     error number will be returned to indicate the error.

ERRORS
     The pthread_mutex_timedlock() function will fail if:

     [Er ENOTRECOVERABLE]
			The mutex was created with the protocol	attribute hav-
			ing the	value PTHREAD_PRIO_PROTECT and the calling
			thread's priority is higher than the mutex's current
			priority ceiling.

     [EINVAL]		The process or thread would have blocked, and
			abs_timeout specified a	nanosecond value less than
			zero or	greater	than or	equal to 1 billion.

     [EINVAL]		The mutex parameter is invalid.

     [ETIMEDOUT]	The mutex could	not be locked before the timeout ex-
			pired.

     [EAGAIN]		The mutex could	not be acquired	because	the maximum
			number of recursive locks for the mutex	has been ex-
			ceeded.

     [EDEADLK]		The current thread already owns	the mutex.

     [EOWNERDEAD]	The argument mutex points to a robust mutex and	the
			previous owning	thread terminated while	holding	the
			mutex lock.  The lock was granted to the caller	and it
			is up to the new owner to make the state consistent.

     [ENOTRECOVERABLE]	The state protected by the mutex is not	recoverable.

SEE ALSO
     pthread_mutex_consistent(3), pthread_mutex_destroy(3),
     pthread_mutex_init(3), pthread_mutex_lock(3), pthread_mutex_trylock(3),
     pthread_mutex_unlock(3)

STANDARDS
     The pthread_mutex_timedlock() function is expected	to conform to ISO/IEC
     9945-1:1996 ("POSIX.1").

BSD				August 17, 2018				   BSD

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

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=pthread_mutex_timedlock&sektion=3&manpath=FreeBSD+12.0-RELEASE+and+Ports>

home | help