PTHREAD_COND_TIMEDWAIT(3)

NAME
pthread_cond_timedwait - wait on a condition variable for a specific amount of time

LIBRARY
libpthread

SYNOPSIS
#include <pthread.h>
int
pthread_cond_timedwait(pthread_cond_t *cond, pthread_mutex_t *mutex, const struct timespec *abstime);

DESCRIPTION
The pthread_cond_timedwait() function atomically blocks the current thread waiting on the condition variable specified by cond, and releases the mutex specified by mutex. The waiting thread unblocks only after another thread calls pthread_cond_signal(3), or pthread_cond_broadcast(3) with the same condition variable, or if the system time reaches the time specified in abstime, and the current thread reacquires the lock on mutex.

The clock used to measure abstime can be specified during creation of the condition variable using pthread_condattr_setclock(3).

RETURN VALUES
If successful, the pthread_cond_timedwait() function will return zero. Otherwise an error number will be returned to indicate the error.

ERRORS
The pthread_cond_timedwait() function will fail if:

[EINVAL]
    The value specified by cond, mutex or abstime is invalid.

[ETIMEDOUT]
    The system time has reached or exceeded the time specified in abstime.

[EPERM]
    The specified mutex was not locked by the calling thread.

SEE ALSO
pthread_cond_broadcast(3), pthread_cond_destroy(3), pthread_cond_init(3), pthread_cond_signal(3), pthread_cond_wait(3), pthread_condattr_setclock(3)

STANDARDS
The pthread_cond_timedwait() function conforms to p1003.1-96.