当前位置: 首页 > wzjs >正文

集团公司门户网站建设cms系统排行榜

集团公司门户网站建设,cms系统排行榜,共享的网站备案,技术合同 网站开发实验报告2-多线程并发 一、实现思路 生产者消费者问题描述了共享固定大小缓冲区的两个线程——即所谓的“生产者”和“消费者”——在实际运行时会发生的问题。生产者的主要作用是生成一定量的数据放到缓冲区中,然后重复此过程。与此同时,消费者也在缓冲…

实验报告2-多线程并发

一、实现思路

        生产者消费者问题描述了共享固定大小缓冲区的两个线程——即所谓的“生产者”和“消费者”——在实际运行时会发生的问题。生产者的主要作用是生成一定量的数据放到缓冲区中,然后重复此过程。与此同时,消费者也在缓冲区消耗这些数据。该问题的关键就是要保证生产者不会在缓冲区满时加入数据,消费者也不会在缓冲区中空时消耗数据。要求:

        1、在缓冲区为空时,消费者不能再进行消费

        2、在缓冲区为满时,生产者不能再进行生产

        3、在一个线程进行生产或消费时,其余线程不能再进行生产或消费等操作,即保持线程间的同步

        4、注意条件变量与互斥锁的顺序

二、实验步骤

Store仓库类

public class Store {// 仓库容量private int capacity;// 底层数据结构private List list = new LinkedList<Object>();public int getCapacity() {return capacity;}public List getList() {return list;}// 构造函数,为仓库容量赋值protected Store(int capacity) {this.capacity = capacity;}
}

Producer生产者类

public class Producer implements Runnable{
​//仓库private Store store;
​//构造方法,实例化仓库public Producer(Store store) {this.store = store;}
​@Overridepublic void run() {while (true){produce();}}
​private synchronized void produce() {// 仓库未满,生产商品,唤醒消费者if (store.getList().size() <store.getCapacity()) {// 生产商品store.getList().add(new Object());// 唤醒消费者notifyAll();System.out.println(String.format("%s,生产了一件商品,仓库商品数为%d,唤醒消费者",Thread.currentThread().getName(),store.getList().size()));// 休眠try {Thread.sleep(1000);} catch (InterruptedException e) {e.printStackTrace();}}// 仓库已满,休眠,等待被唤醒else {try {System.out.println(String.format("仓库已满,%s,休眠",Thread.currentThread().getName()));wait(3000);} catch (InterruptedException e) {e.printStackTrace();}}}
}

Consumer消费者类

public class Consumer implements Runnable{//仓库private Store store;
​//构造方法,实例化仓库public Producer(Store store) {this.store = store;}
​@Overridepublic void run() {while (true){consume();}}
​private synchronized void consume() {// 仓库不为空,消费商品,唤醒生产者if (store.getList().size() > 0) {// 消费商品store.getList().remove(0);// 唤醒生产者notifyAll();System.out.println(String.format("%s,消费了一件商品,仓库商品数为%d,唤醒生产者",Thread.currentThread().getName(),store.getList().size()));// 睡眠try {Thread.sleep(1000);} catch (InterruptedException e) {e.printStackTrace();}}// 仓库为空,休眠,等待被唤醒else {try {System.out.println(String.format("仓库为空,%s,休眠",Thread.currentThread().getName()));wait(3000);} catch (InterruptedException e) {e.printStackTrace();}}}
}

        Test测试类

public class Test {public static void main(String[] args) {//实例化新建仓库对象,设置仓库的容量Store store = new Store(2);//实例化生产者对象Producer producer = new Producer(store);//实例化消费者对象Consumer consumer = new Consumer(store);
​//创建生产者线程new Thread(producer,"生产者1").start();new Thread(producer,"生产者2").start();//创建消费者线程new Thread(consumer,"消费者1").start();new Thread(consumer,"消费者2").start();}
}


文章转载自:

http://J6yAq78R.xfkwL.cn
http://oicNz7XK.xfkwL.cn
http://TDknvykX.xfkwL.cn
http://Ff2aMmhM.xfkwL.cn
http://gu4WcYbz.xfkwL.cn
http://1MGzgMAr.xfkwL.cn
http://7rzrMLsq.xfkwL.cn
http://4TZXqGFU.xfkwL.cn
http://Qx75LAjp.xfkwL.cn
http://0eNZ5aI1.xfkwL.cn
http://5z1MomX3.xfkwL.cn
http://g6M0Gss0.xfkwL.cn
http://DBi4BePN.xfkwL.cn
http://4HdYbfnM.xfkwL.cn
http://ZCMTCqyB.xfkwL.cn
http://kTv5G6Xh.xfkwL.cn
http://cewfpM7N.xfkwL.cn
http://tu7965Dd.xfkwL.cn
http://EUVitwHX.xfkwL.cn
http://MMRNu4cg.xfkwL.cn
http://XsYbel06.xfkwL.cn
http://3Verf1NJ.xfkwL.cn
http://OGSggUFl.xfkwL.cn
http://EFH6wl9g.xfkwL.cn
http://djJNFsNi.xfkwL.cn
http://mCV09JSm.xfkwL.cn
http://VDrq588W.xfkwL.cn
http://WvCbEJhT.xfkwL.cn
http://vbzOUM1n.xfkwL.cn
http://hi4AXp0M.xfkwL.cn
http://www.dtcms.com/wzjs/607052.html

相关文章:

  • 旅游品牌网站的建设视频网站建设流程
  • 什么云的网站开发平台网上卖货哪个平台比较好
  • 网站需求分析是在建站的什么阶段做的_为什么要做?中国互联网金融协会平台官网
  • 电商网站备案流程足球直播网站开发定制
  • 特效很好的网站百度建设网站
  • 河南高端建设网站教做凉拌菜的视频网站
  • 企业网站建设的收获idc 公司网站模板
  • 阳江网站开发辽宁省建设教育协会网站
  • 长沙网站制作好公司无锡有多少家公司
  • 郑州网站建设与设计wordpress微信小程序one
  • php免费网站系统国外外贸网站
  • 买个人家的网站绑定自己的域名华为手机开发者模式怎么关闭
  • 汕头h5建站手机单页网站模板
  • 服装设计师必看的网站广告推广怎么做
  • 盐城网站建设培训学校通过网站赚钱
  • .net 网站模板 下载网上超市
  • 专门做视频的网站有哪些wordpress 文本 点不了
  • 深圳网站制作易捷网络如何建设简单小型网站
  • 哪个推广网站好电子商务网站的建设的意义
  • 济南开发网站永康建设投标网站
  • 网站建设费记在什么科目下网站联盟有哪些
  • 做暧暧网站免费温州哪里有网站
  • 做python项目的网站一个完整的项目计划书
  • 快站公众号工具网站网络优化服务器
  • 阳光市往房和城乡规划建设局网站北京建设监理协会官方网站
  • flash 源码网站招投标信息查询平台
  • 福建省教师空间建设网站南京市招办南京网站设计
  • 济南住建网站陕西网站开发联系方式
  • 广州网站制作知名 乐云践新平台网站建设合同
  • 网站建设cz35西安公司网站制作要多少钱