20 #ifndef COIL_CONDITION_H
21 #define COIL_CONDITION_H
66 ::pthread_cond_init(&m_cond, 0);
86 ::pthread_cond_destroy(&m_cond);
106 ::pthread_cond_signal(&m_cond);
126 ::pthread_cond_broadcast(&m_cond);
150 return 0 == ::pthread_cond_wait(&m_cond, &m_mutex.mutex_);
178 bool wait(
long second,
long nano_second = 0)
181 abstime.tv_sec = std::time(0) + second;
182 abstime.tv_nsec = nano_second;
183 return 0 == ::pthread_cond_timedwait(&m_cond, &m_mutex.mutex_, &abstime);
189 pthread_cond_t m_cond;
193 #endif // COIL_CONDITION_H