pthread_cond_destroy.c 278 B

12345678910111213
  1. #include "pthread_impl.h"
  2. int pthread_cond_destroy(pthread_cond_t *c)
  3. {
  4. int priv = c->_c_mutex != (void *)-1;
  5. int cnt;
  6. c->_c_destroy = 1;
  7. if (c->_c_waiters)
  8. __wake(&c->_c_seq, -1, priv);
  9. while ((cnt = c->_c_waiters))
  10. __wait(&c->_c_waiters, 0, cnt, priv);
  11. return 0;
  12. }