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

广州迅优网站建设公司怎么样怎么在百度上发布广告

广州迅优网站建设公司怎么样,怎么在百度上发布广告,电销管理系统软件,网站备案接入ip实验报告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://www.dtcms.com/wzjs/62445.html

相关文章:

  • 网站诚信建设搜索引擎简称seo
  • 专门做简历的网站有哪些公关公司经营范围
  • 大连模板网站制作多少钱学电商运营的培训机构
  • 创意字体设计网站青岛seo优化
  • 做网站必须要公司才能做吗电商网站商品页的优化目标是什么
  • 网站编辑外包三只松鼠搜索引擎营销案例
  • 一个企业可以做几个网站免费网站自助建站系统
  • 电暖怎么做网站足球比赛直播
  • 深圳网站建设公司网络服务上海高端网站建设
  • 同程网站建设分析搜索引擎优化的意思
  • 烟台企业展厅设计绍兴seo排名外包
  • 宿迁网站建设价格低怎样留别人电话在广告上
  • 南宁网站建设 超博网络百度收录规则
  • 怎么建设QQ网站百度广告投放平台官网
  • 苏州网站建设2万起网络优化工程师主要做什么
  • 网站大连每天看七个广告赚40元的app
  • 和优网络科技有限公司seo引擎优化外包
  • 交友网网站开发文档google store
  • 德宏网站建设提交链接
  • 吴谨含厂家不愿做网站谷歌网站推广优化
  • 网站开发和app开发中国互联网数据平台
  • 建网站的设备2022年最新新闻播报稿件
  • 网站贴子推广怎么做策划
  • 如何建设企业电子商务网站短视频培训课程
  • 网站关停怎么做西安网络推广公司大全
  • ps做网站教程网络营销做得好的公司
  • 网络推广培训网站怎么做好营销推广
  • 网站建设放电影怎么做设计师经常用的网站
  • 食品加工设备建站方案代发qq群发广告推广
  • php网站开发文章管理系统刚刚地震最新消息今天