一、条件变量概述
条件变量可以实现一个线程唤醒一个或多个其他等待中的线程,实现线程间的同步。生产者消费者模型就可以用条件变量来实现。
二、条件变量示例
源码
#pragma once
#include <mutex>
#include <condition_variable>
#include <chrono>
#include <queue>
using namespace std;
class ConditionVariableTest
{
private:
static mutex _queueMutex;
static queue<int> _queue;
static condition_variable _queueConditionVar;
public:
void DoTest()
{
thread providerThread(Provider);
int consumerNum