Sha256: fb96d4313c1915ab3c4ce3727c7d68520c739d03ae656d6c3a90aa0575a70b65
Contents?: true
Size: 1008 Bytes
Versions: 3
Compression:
Stored size: 1008 Bytes
Contents
/* * https://github.com/chenshuo/muduo/blob/master/muduo/base/Condition.h */ #ifndef LIMONP_CONDITION_HPP #define LIMONP_CONDITION_HPP #include "MutexLock.hpp" namespace Limonp { class Condition : NonCopyable { public: explicit Condition(MutexLock& mutex) : mutex_(mutex) { LIMONP_CHECK(!pthread_cond_init(&pcond_, NULL)); } ~Condition() { LIMONP_CHECK(!pthread_cond_destroy(&pcond_)); } void wait() { LIMONP_CHECK(!pthread_cond_wait(&pcond_, mutex_.getPthreadMutex())); } void notify() { LIMONP_CHECK(!pthread_cond_signal(&pcond_)); } void notifyAll() { LIMONP_CHECK(!pthread_cond_broadcast(&pcond_)); } private: MutexLock& mutex_; pthread_cond_t pcond_; }; } #endif
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
jieba_rb-0.0.5 | ext/cppjieba/src/Limonp/Condition.hpp |
jieba_rb-0.0.2 | ext/cppjieba/src/Limonp/Condition.hpp |
jieba_rb-0.0.1 | ext/cppjieba/src/Limonp/Condition.hpp |