GSP
Quick Navigator

Search Site

Unix VPS
A - Starter
B - Basic
C - Preferred
D - Commercial
MPS - Dedicated
Previous VPSs
* Sign Up! *

Support
Contact Us
Online Help
Handbooks
Domain Status
Man Pages

FAQ
Virtual Servers
Pricing
Billing
Technical

Network
Facilities
Connectivity
Topology Map

Miscellaneous
Server Agreement
Year 2038
Credits
 

USA Flag

 

 

Man Pages
PTHREAD_MUTEX_TIMEDLOCK(3) FreeBSD Library Functions Manual PTHREAD_MUTEX_TIMEDLOCK(3)

pthread_mutex_timedlock
lock a mutex without blocking indefinitely

POSIX Threads Library (libpthread, -lpthread)

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

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

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.

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

The pthread_mutex_timedlock() function will fail if:
[Er ENOTRECOVERABLE]
The mutex was created with the protocol attribute having the value PTHREAD_PRIO_PROTECT and the calling thread's priority is higher than the mutex's current priority ceiling.
[]
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.
[]
The mutex parameter is invalid.
[]
The mutex could not be locked before the timeout expired.
[]
The mutex could not be acquired because the maximum number of recursive locks for the mutex has been exceeded.
[]
The current thread already owns the mutex.
[]
The argument mutex points to a robust mutex and the process containing 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.
[]
The state protected by the mutex is not recoverable.

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

The pthread_mutex_timedlock() function is expected to conform to ISO/IEC 9945-1:1996 (“POSIX.1”).
August 7, 2019 FreeBSD 13.1-RELEASE

Search for    or go to Top of page |  Section 3 |  Main Index

Powered by GSP Visit the GSP FreeBSD Man Page Interface.
Output converted with ManDoc.