pthread_cond_timedwait(3thr)pthread_cond_timedwait(3thr)Namepthread_cond_timedwait - Causes a thread to wait for a condition vari‐
able to be signaled or broadcast for a specified period of time.
Syntax
#include <pthread.h>
int pthread_cond_timedwait (cond, mutex, abstime)
pthread_cond_t *cond;
pthread_mutex_t *mutex;
struct timespec abstime;
Arguments
cond Condition variable waited on.
mutex Mutex associated with the condition variable specified in cond.
abstime Absolute time at which the wait expires, if the condition has
not been signaled or broadcast. (See the pthread_get_expira‐
tion_np routine, which is used to obtain a value for this argu‐
ment.)
Description
This routine causes a thread to wait until one of the following occurs:
· The specified condition variable is signaled or broadcast.
· The current system clock time is greater than or equal to the
time specified by the abstime argument.
This routine is identical to pthread_cond_wait except that this routine
can return before a condition variable is signaled or broadcast;
specifically, when a specified time expires.
If the current time equals or exceeds the expiration time, this routine
returns immediately, without causing the current thread to wait. Other‐
wise, waiting on the condition variable can become a nonblocking loop.
Call this routine after you lock the mutex specified in mutex. The
results of this routine are unpredictable if this routine is called
without first locking the mutex.
Return Values
If an error condition occurs, this routine returns -1 and errno is set
to the corresponding error value. Possible return values are as fol‐
lows.
Return Error Description
0 Successful comple‐
tion.
-1 [EINVAL] The value specified
by cond, mutex, or
abstime is invalid.
Different mutexes
are supplied for
concurrent
pthread_cond_timed‐
wait operations or
pthread_cond_wait
operations on the
same condition
variable.
-1 [EAGAIN] The time specified
by abstime expired.
-1 [EDEADLK] A deadlock condi‐
tion is detected.
pthread_cond_timedwait(3thr)