




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、操作系统实验(生产者消费者问题java实现)操作系统实验(生产者消费者问题java实现)一实验目的1深刻理解进程同步的概念。2掌握经典同步问题,生产者一一消费者问题。二实验设备PC机三实验内容在Java开发平台模拟经典进程同步问题,生产者一一消费者问题。四程序的主要代码import javaawt*;import javax swing *;import javaawt.event*;public class PAC extends JFrameprotected JButtonproducerl, producer2, producer3, consumerl, consumer2, con
2、sumer3: protected JTextField blankl, blank2, blank3, blankd, blanks; int J array = new int5:public PAC() JPanel pl = new JPanel(new FlowLayout(FlowLayout. CENTER, 2, 2);pl. add(producerl = new JButtonC生产者 1);pl. add (producer2 = new JButton C生产者 2);pl. add (producer3 = new JButton (z,生产者 3);JPanel p
3、2 = new JPanel(new FlowLayout(FlowLayout. CENTER, 2, 2); p2. add (new JLabel (缓冲区);p2add(blankl = new JTextField(5):p2. add(blank2 = new JTextField(5);JPanel p3 = new JPanel(new FlowLayout(FlowLayout. CENTER, 2, 2);p3. add (consumer 1 = new JButtonC消费者 1);p3. add(consumer2 = new JButton(z,消费者 2);p3.
4、 add (consumer3 = new JButton(z,消费者 3);JPanel p4 = new JPanel(new GridLayout(4, 1, 2, 2);p4. add (new JLabel (阻塞队列);p4add(blank3 = new JTextField(5):p4 add (blank*! = new JTextField(5):p4add(blanks = new JTextField(o):JPanel po = new JPanel(new GridLayout(3, 1, 10, 50);p5 add (pl);p3 add(p2);p3 add(
5、p3);JPanel p6 = new JPanel(new BorderLayout(3, 3):p6 add(p4, BorderLayout EAST);p6 add(p5, BorderLayout CENTER);setLayout(new FlowLayout(FlowLayout. CENTER, 10, 20);this getContentPane() add(p6);producer1. addActionListener(new ActionListener()public void actionPerformed(ActionEvent e)wh;);producer2
6、. addActionListener(new ActionListener() public void actionPerformed(ActionEvent e) wh;);producer3. addActionListener(new ActionListener() public void actionPerformed(ActionEvent e) wh;);consumer1. addActionListener(new ActionListener()public void actionPerformed(ActionEvent e)whh ;);consumer2. addA
7、ctionListener(new ActionListener()public void actionPerformed(ActionEvent e)whh ;);consumer3 addActionListener (new ActionListener ()public void actionPerformed(ActionEvent e)whh ;);public void wh(int n)for(int i = 0;i 5; i+) if(arrayi = 0 & array2 0)switch(-array2) case 1:consumer1. setEnabled(true
8、);break;case 2:consumer2 setEnabled(true);break;case 3:consumer3 setEnabled(true):break;array2 = array3;array3 = array4;array4 = 0;else if (array i = 0 ) if(array1 = 0) arrayiZ = n;break;if(arrayEl != 0) arrayiZ = n;switch(n) case 1:producer1 setEnabled(false);break;case 2:producer2 setEnabled(false
9、):break;case 3:producer3 setEnabled(false);break; break;arrayE0);array1);array2);array3);array4);blank1 setText Cblank2 setText Cblank3 setText Cblank4 setText Cblank5 setText Cpublic void whh(int n)if (array0 != 0)switch(array2)case 1:producer1. setEnabled(true);break;case 2:producer2 setEnabled(tr
10、ue);break;case 3:producer3 setEnabled(true):break;for (int k = 0; k 4; k卄)arrayk = arrayk + 1;array4 = 0;elsefor (int k = 2; k 5; M+)if (arrayk = 0)arrayk = -n;switch(n) case 1:consumer1 setEnabled(false);break; case 2:consumer2 setEnabled(false);break; case 3:consumer3. setEnabled(false);break; bla
11、nk1 setText Cblank2 setText Cblank3 setText Cblank4. setText CarrayEO);array1);array2);array3);array4);public static voidmain (StringE. args)blank5 setText CPAC frame = new PAC ();frame pack();frame. setTitleC生产者与消费者问题实验。;frame. setSize(500, 300);frame setLocationRelativeTo(null);frame setDefaultCloseOperation(JFrame EXIT_0N_CL0SE);frame setVisible(true);/*生产者1、2、3分别生产数字1、2、3;消费者1、2、3的消费请求进入阻 塞队列后分别
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 执业医师考试备考阶段分阶段目标与任务推进的重要性试题及答案
- 2025年卫生资格考试高效备考案例分享试题及答案
- 护理管理与质量控制试题及答案
- 2025年主管护师考试核心内容试题及答案
- 2025年执业护士考试重点复习试题及答案
- 互联网对中国文化传播的影响试题及答案
- 行政管理中的社区参与试题及答案
- 经济法概论考前准备试题及答案
- 护理学相关技术发展试题及答案
- 中国茶文化介绍课件
- 黄腐植酸肥项目投资计划书
- 小学数学二年级下册-第七、八单元教材分析
- 敦煌研学旅行方案
- 2024年计算机软考(初级)程序员考试题库大全(含真题等)
- 思辨与创新智慧树知到期末考试答案章节答案2024年复旦大学
- 职业道德与法律第一课第一节课件市公开课一等奖省赛课微课金奖课件
- 2024年湖北水利发展集团有限公司招聘笔试冲刺题(带答案解析)
- (完整版)韩国商法
- 2024中国南水北调集团东线有限公司招聘笔试参考题库含答案解析
- 2024春期国开电大思政课《中国近现代史纲要》在线形考(专题检测一至八)试题及答案
- 2024猫砂行业调研报告(比亿奇、LORDE)-解数咨询
评论
0/150
提交评论