#include <condition_variable>
时间: 2024-05-17 07:16:12 浏览: 143
线程池c++11 thread类
#include <condition_variable> 是一个 C++ 头文件的引入指令,它用于在多线程编程中实现条件变量。条件变量是一种线程间的同步机制,用于等待或通知某个特定的条件。通过它,线程可以等待一个条件的发生,并在满足条件时得到通知。
在使用条件变量之前,需要先定义一个 std::condition_variable 对象。然后,通过 std::unique_lock<std::mutex> 对象锁住一个互斥量,以保证线程安全。接下来,可以使用 std::condition_variable 的成员函数进行等待和通知操作。
例如,可以使用 std::condition_variable 的 wait() 函数使线程进入等待状态,直到其他线程通过 notify_one() 或 notify_all() 函数发送通知信号。wait() 函数会自动解锁互斥量,并在收到通知后重新上锁。
另外,还可以使用 std::condition_variable 的 wait_for() 或 wait_until() 函数设置超时等待,以避免无限等待的情况。
总之,<condition_variable> 头文件提供了在多线程编程中使用条件变量的相关功能。
阅读全文