//当前线程等待thread线程完成后才从join()返回 package com.mao;
import java.util.concurrent.TimeUnit;
public class Join {
public static void main(String[] args) throws Exception {
Thread previous = Thread.currentThread();
for(int i=0;i<10;i++) {
Thread thread = new Thread(new Domino(previous),String.valueOf(i));
thread.start();
previous = thread;
}
System.out.println("juinr");
TimeUnit.SECONDS.sleep(4);
System.out.println(Thread.currentThread().getName()+" terminate.");
}
}
class Domino implements Runnable{
private Thread thread;
public Domino(Thread thread) {
this.thread=thread;
}
[@Override](https://my.oschina.net/u/1162528)
public void run() {
// TODO Auto-generated method stub
try {
thread.join();
}catch(InterruptedException e) {
}
System.out.println(Thread.currentThread().getName()+" terminate,");
}
}
来源:oschina
链接:https://my.oschina.net/u/2511906/blog/3162884