电脑桌面
添加小米粒文库到电脑桌面
安装后可以在桌面快捷访问

生产者消费者报告

生产者消费者报告_第1页
1/21
生产者消费者报告_第2页
2/21
生产者消费者报告_第3页
3/21
精品文档。1欢迎下载河北建筑工程学院实验报告年月日班级物联142 姓名孙胜杰学号20143260218 评分实验台号同组人员实验名称经典进程同步问题--- 生产者消费者问题模拟实现课程名称操作系统仪 器 名 称型号规格仪器编号装有 eclipse软件和 Java 开发环境的PC机一台一 实验目的1 深刻理解进程同步的概念。2 掌握经典同步问题,生产者——消费者问题。二 实验设备PC机三 实验内容在 Java 开发环境下模拟经典进程同步问题,生产者——消费者问题。四 程序的主要代码package 生产者与消费者问题 ; import java.util.LinkedList; import java.util.Scanner; class Storage { // 仓库最大存储量privatefinalint MAX_SIZE = 100; 精品文档。2欢迎下载// 仓库存储的载体private LinkedList list = newLinkedList(); // 生产num个产品publicvoid produce( int num) { // 同步代码段synchronized (list) { // 如果仓库剩余容量不足while (list.size() + num > MAX_SIZE) { System.out .println("要生产的产品数量 :" + num + "\t 库存量 :" + list.size() +"\t暂时不能执行生产任务 !"); System.out .println("进行生产操作 (1) ,还是消费操作(0)?"); try{ // 由于条件不满足,生产阻塞精品文档。3欢迎下载list.wait(); } catch (InterruptedException e) { e.printStackTrace(); } } // 生产条件满足情况下,生产num个产品for ( int i = 1; i <= num; ++i) { list.add(new Object()); } System. out.println("已经生产产品数 :" + num + "\t现库存量 :" + list.size()); System. out.println("进行生产操作 (1) ,还是消费操作(0)?"); list.notifyAll(); } 精品文档。4欢迎下载} // 消费num个产品publicvoid consume( int num) { // 同步代码段synchronized (list) { // 如果仓库存储量不足while (list.size() < num) { System.out .println("要消费的产品数量 :" + num + "\t 库存量 :" + list.size() + "\t暂时不能执行生产任务!"); System.out .println("进行生产操作 (1) ,还是消费操作(0)?"); try{ // 由于条件不满足,消费阻塞list.wait(); 精品文档。5欢迎下载} catch (InterruptedException e) { e.printStackTrace(); } } // 消费条件满足情况下,消费num个...

1、当您付费下载文档后,您只拥有了使用权限,并不意味着购买了版权,文档只能用于自身使用,不得用于其他商业用途(如 [转卖]进行直接盈利或[编辑后售卖]进行间接盈利)。
2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。
3、如文档内容存在违规,或者侵犯商业秘密、侵犯著作权等,请点击“违规举报”。

碎片内容

生产者消费者报告

确认删除?