多线程
Tornado1102
这个作者很懒,什么都没留下…
展开
-
线程安全的单例模式
pthread版本使用模板templateclass Singleton : boost::noncopyable{ public: static T& instance() { pthread_once(&ponce_, &Singleton::init); return *value_; } private: Singleton(); ~S原创 2017-07-26 19:20:16 · 332 阅读 · 0 评论 -
什么是spurious wakeups(虚假唤醒)
查阅了很多资料,发现网上说的很多关于Spurious wakeups 的描述都是错误的。第一次遇到Spurious wakeups是在使用条件变量时,wait端需要使用while来等待条件变量二不能使用if语句。如:// wait端pthread_mutex_lock(mtx);while(pass == 0) pthread_cond_wai原创 2017-07-26 18:17:32 · 8548 阅读 · 2 评论