Home | History | Annotate | Download | only in pthread_cond_destroy
      1 <assertions>
      2   <assertion id="1" tag="ref:XSH6:32349:32353">
      3   The function
      4     int pthread_cond_destroy(pthread_cond_t *cond);
      5   shall destroy the given condition variable specified by cond;
      6   the object becomes, in effect, uninitialized. An implementation may cause pthread_cond_destroy()
      7   to set the object referenced by cond to an invalid value. A destroyed condition variable object can
      8   be reinitialized using pthread_cond_init(); the results of otherwise referencing the object after it
      9   has been destroyed are undefined.
     10   </assertion>
     11 
     12   <assertion id="2" tag="ref:XSH6:32354:32356">
     13   It shall be safe to destroy an initialized condition variable upon which no threads are currently
     14   blocked. Attempting to destroy a condition variable upon which other threads are currently
     15   blocked results in undefined behavior.
     16   </assertion>
     17 
     18   <assertion id="3" tag="ref:XSH6:32370:32370">
     19   If successful, the pthread_cond_destroy() function shall return zero;
     20   </assertion>
     21 
     22   <assertion id="4" tag="ref:XSH6:32376:32380">
     23   The pthread_cond_destroy() function may fail if:
     24     [EBUSY] The implementation has detected an attempt to destroy the object referenced
     25             by cond while it is referenced (for example, while being used in a
     26             pthread_cond_wait() or pthread_cond_timedwait( )) by another thread.
     27     [EINVAL] The value specified by cond is invalid.
     28   The function shall not return an error code of [EINTR].
     29   </assertion>
     30 </assertions>
     31