以下代码,如何做才能使 end 一定是在t1,t2之后输出
public class Test{
public static void main(str[]arg2){
Thread t1=new Thread(new Runable(){
public void run(){
System.out.println("t1");
}
});
Thread t2=new Thread(new Runable(){
public void run(){
System.out.println("t2");
}
});
t1.start();
t2.start();
System.out.println("end");
}
}
在 t1.start();
t2.start();
后添加
t1.join();
t2.join();
还有是new Runnable
Thread t1=new Thread(new Runnable(){
public void run(){
try {
Thread.sleep(6000);
} catch (InterruptedException e) {
}
System.out.println("t1");
}
});
Thread t2=new Thread(new Runnable(){
public void run(){
try {
Thread.sleep(2000);
} catch (InterruptedException e) {
}
System.out.println("t2");
}
});
t1.start();
t2.start();
t1.join();
t2.join();
System.out.println("end");
public static void main(String ars[]) {
Thread t1 = new Thread(new Runnable() {
@Override
public void run() {
System.out.println("t1");
}
});
Thread t2 = new Thread(new Runnable() {
@Override
public void run() {
System.out.println("t2");
}
});
t1.start();
t2.start();
while (t1.isAlive() || t2.isAlive()) {
} //等两个线程全部运行完成后输出
System.out.println("end");
}
支持JamesZhao1987