黑马程序员技术交流社区
标题:
求一篇代码
[打印本页]
作者:
an3077458
时间:
2015-9-17 22:09
标题:
求一篇代码
求一篇经典的好理解的多线程代码
作者:
德胜
时间:
2015-9-17 22:12
难度有点大
作者:
iceknc
时间:
2015-9-17 22:22
老毕讲的卖票系统通俗易懂,可以去下来看看
作者:
俏皮雅轩
时间:
2015-9-17 22:29
我们还没有学到那地方
作者:
chenguoyu520
时间:
2015-9-21 13:12
package cn.com.cxsw.lesson19; import java.util.Stack; /** * @Author 陈国玉 *
@version
2015-3-29 * @Description Tom(厨师) and Jerry(吃货)吃饼 1.Tom每3秒可以烧制一张饼 2.Jerry每8秒可以吃掉一张饼 * 3.盛饼的盘子只能装10张饼,当盘子装满后,Tom就休息不再做饼, 等待Jerry拿走一张饼以后再继续烧制 * 4.做100张饼、全部由Jerry吃完, 由程序反映出做饼和吃饼的过程 * * 提示:用内部类来声明Tom和Jerry线程,这样就可以使用全局的盘子变量 用Stack对象来作为盘子,放饼push、吃饼pop * 用一个从0开始的整数变量来代表第几张饼,这样每一个饼都可以相当于有个编号 */ public class EatCake { Stack<Integer> plate = new Stack<Integer>(); int num = 0; public static void main(String[] args) { EatCake ec = new EatCake(); Tom tom = ec.new Tom(); Jerry jerry = ec.new Jerry(); tom.start(); jerry.start(); } class Tom extends Thread { public void run() { while(num < 100){ if(plate.size() < 10){ try { sleep(3000); } catch (InterruptedException e) { e.printStackTrace(); } plate.push(++num); System.out.println("Tom做了第"+num+"张饼!"); } } } } class Jerry extends Thread { public void run() { int count = 0 ; while(true){ if(!plate.isEmpty()){ System.out.println("Jerry吃了第"+plate.pop()+"张饼!"); count++; try { sleep(8000); } catch (InterruptedException e) { e.printStackTrace(); } } if(count >= 100){ break; } } } } }
作者:
ln0491
时间:
2015-9-21 13:43
最经典,生产都与消费者,百度一下JAVA的生产者与消费都
作者:
915816106
时间:
2015-9-21 19:33
要多经典
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2