github.com/afumu/libc@v0.0.6/musl/src/thread/pthread_cond_destroy.c (about)

     1  #include "pthread_impl.h"
     2  
     3  int pthread_cond_destroy(pthread_cond_t *c)
     4  {
     5  	if (c->_c_shared && c->_c_waiters) {
     6  		int cnt;
     7  		a_or(&c->_c_waiters, 0x80000000);
     8  		a_inc(&c->_c_seq);
     9  		__wake(&c->_c_seq, -1, 0);
    10  		while ((cnt = c->_c_waiters) & 0x7fffffff)
    11  			__wait(&c->_c_waiters, 0, cnt, 0);
    12  	}
    13  	return 0;
    14  }