852.线程a,b,c,d运⾏任务,怎么保证当a,b,c线程执⾏完再执⾏d线程?

  1. CountDownLatch类
    ⼀个同步辅助类,常⽤于某个条件发⽣后才能执⾏后续进程。给定计数初始化CountDownLatch,调⽤countDown()⽅法,在计数到达零之前,await⽅法⼀直受阻塞。
    重要⽅法为countdown()与await();
  2. join⽅法
    将线程B加⼊到线程A的尾部,当A执⾏完后B才执⾏。

    1 public static void main(String[] args) throws Exception {
    2 Th t = new Th("t1");
    3 Th t2 = new Th("t2");
    4 t.start();
    5 t.join();
    6 t2.start();
    7 }
  3. notify、wait⽅法,Java中的唤醒与等待⽅法,关键为synchronized代码块,参数线程间应相同,也常⽤Object作为参数。