黑马程序员技术交流社区
标题:
求大神解答
[打印本页]
作者:
peng891108
时间:
2016-5-28 22:44
标题:
求大神解答
模拟三个老师同时分发
100
份试卷
,
每个老师相当于一条线程
,
分别给三个线程命名为
”
张老师线程
,
林老师线程
,
李老师线程
”,
如果要求最后一张试卷必须由
”
李老师线程
”
发出
,
请问应该怎么做
?
作者:
lidongzhe
时间:
2016-5-28 22:44
本帖最后由 lidongzhe 于 2016-5-28 23:36 编辑
public class Demo9 {
public static void main(String[] args) {
SendPaper sp = new SendPaper();
new Thread(sp, "李老师").start();
new Thread(sp, "张老师").start();
new Thread(sp, "林老师").start();
}
}
class SendPaper implements Runnable{
private int num = 100;
@Override
public void run() {
while(true){
synchronized ("锁") {
if(num == 1){
if("李老师".equals(Thread.currentThread().getName())){
System.out.println(Thread.currentThread().getName() + "发完最后一张试卷" + num);
break;
}
break;
}
try {
Thread.sleep(100);
} catch (InterruptedException e) {
e.printStackTrace();
}
System.out.println(Thread.currentThread().getName() + "发了第" + num-- + "试卷");
}
}
}
}
作者:
车前子008
时间:
2016-5-28 22:58
本帖最后由 车前子008 于 2016-5-29 18:50 编辑
package cn.itcast_08_ticket; /* * TicketSeller 是 模拟售票窗口. * * 100 张票. * */ public class TicketSeller extends Thread { // 成员变量
作者:
车前子008
时间:
2016-5-28 22:59
本帖最后由 车前子008 于 2016-5-29 18:50 编辑
package cn.itcast_08_ticket; /* * TicketSeller 是 模拟售票窗口. * * 100 张票. * */ public class TicketSeller extends Thread { // 成员变量
作者:
A昌_e244R
时间:
2016-5-30 01:06
厉害哦,还是妹子哟!!
作者:
linqunjing
时间:
2016-6-3 01:50
学习了
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2