美文网首页
生产者-消费者问题 -(进程)-操作系统

生产者-消费者问题 -(进程)-操作系统

作者: 热血沸腾 | 来源:发表于2023-04-27 14:08 被阅读0次
image.png image.png image.png

生产者-消费者问题


semaphore  full = 0;  //同步信号量 代表产品数量,初始肯定是0 缓冲区->消费者
semaphore  empty = 5;  //同步信号量 代表空闲缓冲区的数量,初始肯定是5  缓冲区->生产者   
semaphore  mutex = 1; //缓冲区只有一份 是临界资源 互斥
//注意 实现互斥的P操作一定放在实现同步的P操作之后。先同步P后互斥P,否则产生死锁操作!

//生产者进程
productor{
    生产数据;  //不把这段代码放入在PV操作中是因为减少临界区代码,耗费时间,让更多进程使用临界区资源
    P(empty);
    P(mutex);
    把产品放入缓冲区; //访问临界资源
    V(mutex);
    V(full);

}

consumer{
    P(full);
    P(mutex);
    从缓冲区中取数据;//访问临界资源
    V(mutex);
    V(empty);
    消费数据;//不把这段代码放入在PV操作中是因为减少临界区代码,耗费时间,让更多进程使用临界区资源
}


相关文章

  • 生产者和消费者问题

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

  • 生产者消费者问题、死锁问题

    生产者消费者问题 系统中有一组生产者进程和一组消费者进程,生产者进程每次生产一个产品放入缓冲区,消费者进程每次从缓...

  • 用记录型信号量解决生产者-消费者问题

    问题描述: 有一群生产者进程在生产产品,并将这些产品提供给消费者进程去消费。为使生产者进程与消费者进程能并发执行,...

  • 生产者消费者问题

    生产者消费者问题是一个经典的同步问题,问题的描述如下: 一组生产者进程和一组消费者进程共享一个初始为空,大小为n的...

  • java多线程实现生产者消费者问题

    思想可以参考操作系统里的pv操作实现生产者消费者问题

  • 生产者和消费者问题

    生产者和消费者是操作系统中的一个经典问题,这个问题是在讲“进程同步”时的一个例子,下面我就用Java语言中的not...

  • Java并发之生产者和消费者

     生产者和消费者问题是操作系统并发性经典问题之一,描述的是有一块缓冲区为仓库,生产者可以将商品放入仓库,消费者可以...

  • 五个同步问题的经典模型之一:生产者/消费者问题

    也叫缓存绑定问题(bounded- buffer),是一个经典的、多进程同步问题。 单生产者和单消费者 有两个进程...

  • 进程并发编程基础

    前言:看了操作系统并发编程的基础,做个笔记并用 C 实现常见的一种并发编程的模型——消费者、生产者模型 进程之间的...

  • 经典进程同步问题 --- 生产者和消费者

    问题描述:一组生产者进程和一组消费者进程共享一个初始为空、大小为 n 的缓冲区,只有缓冲区没满时,生产者才能把消息...

网友评论

      本文标题:生产者-消费者问题 -(进程)-操作系统

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