赞
踩
关于生产者与消费者模式的问题,是一个经典的多线程问题,与其理解成生产者与消费者问题,不如理解成生产者与销售人员的问题,生产者在工厂将商品生产出,存放在工厂中,如果生产的商品数量达到工厂的最大容纳限度时,就会停止生产,从线程角度理解就是休眠;如果生产的商品数量没有达到最大容纳限度时,就会一直生产,只要生产,就会唤醒销售人员进行销售;销售在销售的时候,如果工厂中没有商品,也就是商品数量为0时,销售人员就回停止销售;从线程角度理解就是休眠;工厂中只要有商品,销售人员就会销售商品;然后唤醒生产者继续生产,
上面大概分析生产者与消费者的题意之后,来分析一下怎样将题意思路转换为代码写作步骤的分析
1.分析所需要的类
1.工厂类
2.生产者类
3.消费者类
4.测试类
2.分析每个类里边的属性与方法
2.1工厂类
1.所需要的属性
1.用来记录商品数量的变量
2.固定不变的工厂最大商品数量容纳独
2.所需要的方法
1.生产者生产商品,
1.如果生产的商品数量大于等于最大容纳度,生产者停止生产,也就是线程休眠,不知道具体啥时候被唤醒,所以用无休止休眠,但是线程间的通讯是在同步中操作的,所在定义方法的时候定义成同步方法,
2.如果生产的商品数量不大于等于最大容纳度,那么将继续生产,商品数量增加,假设生产者每次生产一件商品,只要生产出商品,就会叫销售人员来销售东西
2.消费者消费产品,
上面提到将消费者看成销售人员,当商
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。