黑马程序员技术交流社区
标题:
小练习,望告知怎么用其他方法实现
[打印本页]
作者:
夜写意
时间:
2015-7-13 22:18
标题:
小练习,望告知怎么用其他方法实现
/*
需求:模拟三个老师同时分发80份学习笔记,每个老师相当于一个线程
思路:80份学习笔记是共享的,所以需要同步。
定义一个类ProvideNotes,实现Runnable接口模拟老师线程
成员变量:学习笔记
成员方法:发笔记,需要同步,用synchronized修饰
覆写run方法循环调用发笔记的方法。
测试类中创建ProvideNotes对象,
创建3个线程传入ProvideNotes对象
调用start方法
*/
class ProvideNotes implements Runnable
{
private int notes = 80;
//private int count = 0;
private synchronized void provideNotes(){
if(notes>0){
try{
Thread.sleep(2);
}catch(Exception e){
e.printStackTrace();
}
System.out.println(Thread.currentThread().getName() + "发送第"
+ (80- --notes) + "份笔记,还剩下" + notes + "本。" );
}
}
public void run(){
while(true){
provideNotes();
}
}
}
复制代码
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2