美文网首页
消费者生产者问题

消费者生产者问题

作者: 一ccc | 来源:发表于2018-04-22 13:42 被阅读0次
#include <iostream>
#include <thread>
#include <mutex>
#include <queue>
#include <chrono>
#include <condition_variable>
using namespace std;
int main(int argc,char **argv){
    queue<int> buffer;
    mutex m;
    condition_variable cond_var;
    int num;

    thread producer([&](){
       while(1){
           this_thread::sleep_for(chrono::seconds(1));

           unique_lock<std::mutex> lock(m);

           num++;
           cout<<"produucing"<<num<<endl;
           buffer.push(num);

           cond_var.notify_one();
       }
    });

    thread consumer([&](){
        while(1){
            unique_lock<mutex> lock(m);

            if(buffer.empty())
                cond_var.wait(lock);

            cout<<"consuming"<<buffer.front()<<endl;
            buffer.pop();
        }
    });
    producer.join();
    consumer.join();
    return 0;
}

相关文章

  • 生产者和消费者问题

    生产者和消费者问题 问题简述 组成 系统中有一组生产者和消费者进程 生产者生产者将产品放入缓冲区 消费者消费者进程...

  • 操作系统知识点持续更新

    生产者消费者问题 关于生产者消费者问题可以参考这篇文章:生产者消费者问题的java实现 临界区与互斥量 临界区:保...

  • 经典同步互斥问题

    生产者消费者问题 生产者消费者应当是最最基本的同步互斥问题了。生产者生产了之后消费者才消费,消费者消费之后,通知生...

  • 生产者和消费者问题详解

    生产者和消费者问题详解 定义 生产者消费者问题(英语:Producer-consumer problem),也称有...

  • 2-1.死锁-经典同步问题

    三、经典同步问题 1.生产者-消费者问题 计算机系统中的许多问题都可归结为生产者与消费者问题,生产者与消费者可以通...

  • 9. python多进程之Queue实现生产者消费者模型

    一、概述 什么是生产者消费者模式生产者消费者模式是通过一个容器来解决生产者和消费者的强耦合问题。生产者和消费者彼此...

  • 生产者消费者

    什么是生产者和消费者 生产者消费者模式是通过一个容器来解决生产者和消费者的强耦合问题。 生产者和消费者彼此之间不直...

  • java生产者消费者实现

    什么是生产者消费者模式 生产者消费者模式是通过一个容器来解决生产者和消费者的强耦合问题。生产者和消费者彼此之间不直...

  • 生产者消费者模式-java原生、Disruptor实现方案

    生产者消费者模式介绍 生产者消费者模式是通过一个容器来解决生产者和消费者的强耦合问题。生产者和消费者彼此之间不直接...

  • Java实现生产者-消费者模型的几种方法

    什么是生产者消费者模式 生产者消费者模式是通过一个容器来解决生产者和消费者的强耦合问题。生产者和消费者彼此之间不直...

网友评论

      本文标题:消费者生产者问题

      本文链接:https://www.haomeiwen.com/subject/ecxclftx.html