package juc;
import java.util.concurrent.TimeUnit;
/**
* @author yanjun.liu
* @date 2020/7/1--17:00
*/
public class Test6 {
public static void main(String[] args) throws InterruptedException {
Thread lw= new Thread(()->{
try {
System.out.println("老王開始洗杯子");
TimeUnit.SECONDS.sleep(1);
System.out.println("老王開始燒水");
TimeUnit.SECONDS.sleep(5);
System.out.println("老王燒水完成");
} catch (InterruptedException e) {
e.printStackTrace();
}
},"老王");
Thread lisi= new Thread(()->{
try {
System.out.println("李四開始找茶葉");
TimeUnit.SECONDS.sleep(3);
System.out.println("李四都做完了。。。。等老王燒開水,泡茶");
//lisi等待老王
lw.join();
} catch (InterruptedException e) {
e.printStackTrace();
}
System.out.println("李四泡茶");
});
long start = System.currentTimeMillis();
lw.start();
lisi.start();
//主線程等待,目的等待兩個線程執行完成,打印時間
lisi.join();
lw.join();
long end = System.currentTimeMillis();
System.out.println(start-end);
}
}
java 併發 join 之 老王泡茶
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.