- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
《java生产者消费者问题》.doc
操作系统课程设计(一号黑体加粗)
用多进程同步方法解决生产者-消费者问题
(小二黑体加粗)
院 系:
班 级:
学 号:
姓 名:
同 组 者:
时 间:
目录(小二黑体加粗)
一、题目: 3
二、设计目的: 3
三、总体设计思想概述: 3
四、说明: 3
五、设计要求: 3
六、设计方案: 3
七、流程图: 4
八、运行结果 4
九、源程序 7
十、总结 15
十一、参考文献 15
一、题目:(标题2,即三号黑体加粗)
用多进程同步方法解决生产者-消费者问题。
二、设计目的:
通过研究Linux 的进程机制和信号量实现生产者消费者问题的并发控制。
三、总体设计思想概述:
生产者—消费者问题是一种同步问题的抽象描述。
计算机系统中的每个进程都可以消费或生产某类资源。当系统中某一进程使用某一资源时,可以看作是消耗,且该进程称为消费者。
而当某个进程释放资源时,则它就相当一个生产者。
四、说明:
有界缓冲区内设有20个存储单元,放入/取出的数据项设定为1-20这20个整型数。
五、设计要求:
1、每个生产者和消费者对有界缓冲区进行操作后,即时显示有界缓冲区的全部内容,当前指针位置和生产者/消费者进程的标识符。
2、生产者和消费者各有两个以上。
3、多个生产者或多个消费者之间须有共享对缓冲区进行操作的函数代码。
六、设计方案:
1、用Java编写程序,运行环境为Eclipse。
2、抽象化生产者与消费者之间的关系,即用线程来产生数据或者使用数据,定义的类有:
(1)、public class BufferLock
(2)、class Producer
(3)、class Consumer
3、然后继承Thread(线程)来实现多个生产者与多个消费者之间的关系:
(1)、class Producer extends Thread
(2)、class Consumer extends Thread
4、还需要有一个缓冲区来存放数据,即通过缓冲区把生产者和消费者联系起来。
5、synchronized关键字修饰方法,实现线程同步。
七、流程图:
八、运行结果
1、截图一:
2、截图二:
3、截图三:
源程序
public class BufferLock //加互斥锁的缓冲区
{
private int value; //共享变量
private boolean isEmpty=true; //value是否为空的信号量
public synchronized void put(int i) //同步方法
{
while (!isEmpty) //当value不空时,等待
try
{
this.wait(); //使调用该方法的当前线程等待,即阻塞自己
}
catch(InterruptedException e) {}
value = i; //当value空时,value获得值
isEmpty = false; //设置value为不空状态
notifyAll(); //唤醒其他所有等待线程
}
public synchronized int get() //同步方法
{
while (isEmpty) //当value空时,等待
try
{
this.wait();
}
catch(InterruptedException e) {}
isEmpty = true;
您可能关注的文档
最近下载
- 《防范遏制矿山领域重特大生产安全事故的硬措施》解读.pptx VIP
- [运行]-污水处理运营费用明细.docx VIP
- 《中华人民共和国标准化法》专业解读课件.pptx VIP
- 高中数学精品讲义:三角函数的概念(五大题型).pdf VIP
- 2025无创正压通气临床研究年度进展.pdf VIP
- 20240320可用性工程(人因设计)研究报告 空白模版.docx VIP
- GB_T 32151.14-2023 碳排放核算与报告要求 第14部分:其他有色金属冶炼和压延加工企业.pdf VIP
- 医务人员职业安全防护措施.pdf VIP
- 12J6 外装修标准图集.pdf VIP
- 兽医内科病 兽医学教材.ppt VIP
文档评论(0)