使用VC++6.0实现的“操作系统”课程中的生产者-消费者问题

上传者: oliver_zheng | 上传时间: 2021-06-11 14:57:11 | 文件大小: 44KB | 文件类型: RAR
一、原理 生产者线程: while (true) 生产 wait(empty) wait(mutex) 将产品放入队列 signal(mutex) signal(full) end while 消费者线程: while (true) wait(full) wait(mutex) 从队列中取出产品 signal(mutex) signal(empty) 消费 end while 信号量full表示可消费的产品数量,empty代表空单元的数量(用于容纳新生产的产品),mutex用于互斥地访问产品队列。wait操作对应于P原语,表示可用资源数量加快(减慢)生产,减慢(加快)消费”来随机调整生产和消费的时间,以观察生产者或消费者线程阻塞的状况。 程序在VC++6.0下编译通过。

文件下载

资源详情

[{"title":"( 25 个子文件 44KB ) 使用VC++6.0实现的“操作系统”课程中的生产者-消费者问题","children":[{"title":"ProducerConsumer","children":[{"title":"resource.h <span style='color:#111;'> 744B </span>","children":null,"spread":false},{"title":"ProducerConsumer.dsw <span style='color:#111;'> 555B </span>","children":null,"spread":false},{"title":"ProducerConsumer.plg <span style='color:#111;'> 3.56KB </span>","children":null,"spread":false},{"title":"Debug","children":null,"spread":false},{"title":"RCa03368 <span style='color:#111;'> 21.35KB </span>","children":null,"spread":false},{"title":"ProducerConsumer.h <span style='color:#111;'> 1.43KB </span>","children":null,"spread":false},{"title":"ProducerConsumer.clw <span style='color:#111;'> 2.48KB </span>","children":null,"spread":false},{"title":"ProducerConsumer.dsp <span style='color:#111;'> 4.65KB </span>","children":null,"spread":false},{"title":"ReadMe.txt <span style='color:#111;'> 4.44KB </span>","children":null,"spread":false},{"title":"ProducerConsumerView.cpp <span style='color:#111;'> 9.92KB </span>","children":null,"spread":false},{"title":"ProducerConsumerDoc.h <span style='color:#111;'> 1.55KB </span>","children":null,"spread":false},{"title":"ProducerConsumer.ncb <span style='color:#111;'> 89.00KB </span>","children":null,"spread":false},{"title":"res","children":[{"title":"ProducerConsumerDoc.ico <span style='color:#111;'> 1.05KB </span>","children":null,"spread":false},{"title":"Toolbar.bmp <span style='color:#111;'> 1.05KB </span>","children":null,"spread":false},{"title":"ProducerConsumer.ico <span style='color:#111;'> 1.05KB </span>","children":null,"spread":false},{"title":"ProducerConsumer.rc2 <span style='color:#111;'> 408B </span>","children":null,"spread":false}],"spread":true},{"title":"ProducerConsumer.opt <span style='color:#111;'> 47.50KB </span>","children":null,"spread":false},{"title":"ProducerConsumerDoc.cpp <span style='color:#111;'> 1.90KB </span>","children":null,"spread":false},{"title":"MainFrm.h <span style='color:#111;'> 1.54KB </span>","children":null,"spread":false},{"title":"ProducerConsumerView.h <span style='color:#111;'> 2.22KB </span>","children":null,"spread":false},{"title":"ProducerConsumer.rc <span style='color:#111;'> 11.74KB </span>","children":null,"spread":false},{"title":"ProducerConsumer.aps <span style='color:#111;'> 28.47KB </span>","children":null,"spread":false},{"title":"StdAfx.cpp <span style='color:#111;'> 218B </span>","children":null,"spread":false},{"title":"ProducerConsumer.cpp <span style='color:#111;'> 4.29KB </span>","children":null,"spread":false},{"title":"MainFrm.cpp <span style='color:#111;'> 2.46KB </span>","children":null,"spread":false},{"title":"StdAfx.h <span style='color:#111;'> 1.03KB </span>","children":null,"spread":false}],"spread":false}],"spread":true}]

评论信息

  • GragonOfSeal :
    学习参考,是一个不错选择
    2020-04-28
  • qq_20150271 :
    这个很好用。
    2018-01-09
  • baidu_22623525 :
    可以略作参考
    2016-01-18

免责申明

【只为小站】的资源来自网友分享,仅供学习研究,请务必在下载后24小时内给予删除,不得用于其他任何用途,否则后果自负。基于互联网的特殊性,【只为小站】 无法对用户传输的作品、信息、内容的权属或合法性、合规性、真实性、科学性、完整权、有效性等进行实质审查;无论 【只为小站】 经营者是否已进行审查,用户均应自行承担因其传输的作品、信息、内容而可能或已经产生的侵权或权属纠纷等法律责任。
本站所有资源不代表本站的观点或立场,基于网友分享,根据中国法律《信息网络传播权保护条例》第二十二条之规定,若资源存在侵权或相关问题请联系本站客服人员,zhiweidada#qq.com,请把#换成@,本站将给予最大的支持与配合,做到及时反馈和处理。关于更多版权及免责申明参见 版权及免责申明