Home | History | Annotate | Download | only in pthread_cond_timedwait
      1 <assertions>
      2   <assertion id="1" tag="ref:XSH6:32467:32469">
      3    The function
      4      int pthread_cond_timedwait(pthread_cond_t *restrict cond,
      5                            pthread_mutex_t *restrict mutex);
      6                            const struct timespec *restrict abstime);
      7    shall block on a condition variable. It shall be called with mutex locked
      8    by the calling thread or undefined behavior results.
      9   </assertion>
     10 
     11   <assertion id="2" tag="ref:XSH6:32499:32502">
     12   The pthread_cond_timedwait() function shall be equivalent to pthread_cond_wait(), except that an
     13   error is returned if the absolute time specified by abstime passes (that is, system time equals or
     14   exceeds abstime) before the condition cond is signaled or broadcasted, or if the absolute time
     15   specified by abstime has already been passed at the time of the call.
     16    </assertion>
     17 
     18   <assertion id="3" tag="ref:XSH6:32516:32516">
     19   Upon successful completion, a value of zero shall be returned;
     20   </assertion>
     21 
     22   <assertion id="4" tag="ref:XSH6:32521:32526">
     23   The pthread_cond_timedwait() function shall fail if:
     24     [ETIMEDOUT]  The time specified by 'abstime' has passed.
     25   The pthread_cond_timedwait() function may fail if:
     26     [EINVAL] The value specified by cond, mutex,or abstime is invalid.
     27     [EINVAL] Different mutexes were supplied for concurrent pthread_cond_timedwait() or
     28              pthread_cond_wait() operations on the same condition variable.
     29     [EPERM] The mutex was not owned by the current thread at the time of the call.
     30   These functions shall not return an error code of [EINTR].
     31   </assertion>
     32 
     33 </assertions>
     34