1.作用:在C++11中,我们可以使用条件变量(std::condition_variable)实现多个线程间的同步操作;当条件不满足时,相关线程被一直阻塞,并释放CPU,直到某种条件出现,这些线程才会被唤醒。条件变量需要和互斥量(锁)一起搭配使用。
2.常用的成员函数:
(1)wait():阻塞当前线程,直到条件变量被唤醒。
(2)wait_for:阻塞当前线程,直到条件变量被唤醒或到达指定时长后。
(3)wait_until:阻塞当前线程,直到条件变量被唤醒,或知道抵达指定的时间点。
(4)notify_once:通知一个等待的线程。
(5)notify_all:通知所有等待的线程。
原文:https://www.cnblogs.com/zwj-199306231519/p/13550427.html