The pthread_cond_timedwait function unlocks the given mutex and places the calling thread into blocked state. When the specified condition variable is signaled or broadcast, or the system time is greater than i or equal to timeout, this function re-locks the mutex and returns to the caller.