黑马程序员技术交流社区

标题: 三个线程之间怎么让他一个一个的按顺序执行呀? [打印本页]

作者: daniua    时间: 2016-4-4 20:59
标题: 三个线程之间怎么让他一个一个的按顺序执行呀?
三个线程之间怎么让他一个一个的按顺序执行呀?
作者: xinzhang    时间: 2016-4-4 22:32
public class JoinTest2 {
// 现在有T1、T2、T3三个线程,如何保证T2在T1执行完后执行,T3在T2执行完后执行
public static void main(String[] args) {
final Thread t1 = new Thread(new Runnable() {

@Override
public void run() {
System.out.println("t1 run");

}
});

final Thread t2 = new Thread(new Runnable() {

@Override
public void run() {

try {
// 引用T1线程,等待T1线程执行完
t1.join();
} catch (InterruptedException e) {
e.printStackTrace();
}
System.out.println("T2 run");
}

});

final Thread t3 = new Thread(new Runnable() {

@Override
public void run() {
// 引用t2线程,等待t2线程执行完成
try {
t2.join();
} catch (InterruptedException e) {
e.printStackTrace();
}
System.out.println("t3 run");
}

});
t1.start();
t2.start();
t3.start();

}


该你找到的 参考一下
作者: zhoubinjian    时间: 2016-4-5 03:56
学了join()函数你就会了,很简单的
作者: ameanboy    时间: 2016-4-5 07:58
还可以用同步,互斥锁来做
作者: itgaga    时间: 2016-4-5 08:13
同步就可以解决这个问题{:2_32:}
作者: 小海龙    时间: 2016-4-5 16:24
xinzhang 发表于 2016-4-4 22:32
public class JoinTest2 {
// 现在有T1、T2、T3三个线程,如何保证T2在T1执行完后执行,T3在T2执行完后执行 ...

厉害厉害,学习了。
作者: 865411604    时间: 2016-4-5 16:50
可以设置sleep睡眠来进行,试试看。
作者: 木辰    时间: 2016-4-5 20:20
试试看用lock,刚学的,应该有用
作者: xinzhang    时间: 2016-4-6 09:28
小海龙 发表于 2016-4-5 16:24
厉害厉害,学习了。

过奖过奖




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2