小编Sie*_*ose的帖子

有没有办法在没有 lambda 的情况下使用 std::condition_variable::wait(lock, pred) ?

我在网上找到了这段代码,解释了如何使用 astd::condition_variable来解决生产者-消费者问题:Producer-Consumer Problem using Condition Variable in C++

#include <condition_variable> // std::condition_variale
#include <cstdlib>
#include <iostream>
#include <mutex>
#include <thread>
using namespace std;

std::mutex g_mutex;
std::condition_variable g_cv;

bool g_ready = false;
int g_data = 0;

int produceData() {
  int randomNumber = rand() % 1000;
  std::cout << "produce data: " << randomNumber << "\n";
  return randomNumber;
}

void consumeData(int data) { std::cout << "receive data: " << data << "\n"; }

void consumer() {
  int data = 0; …
Run Code Online (Sandbox Code Playgroud)

c++ lambda multithreading condition-variable

2
推荐指数
1
解决办法
189
查看次数

标签 统计

c++ ×1

condition-variable ×1

lambda ×1

multithreading ×1