java 并发join之 老王泡茶

    技术2022-07-11  111

    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); } }
    Processed: 0.025, SQL: 9