CountDownLatch 的作用是:当一个线程需要另外一个或多个线程完成后,再开始执行。比如主线程要等待一个子线程完成环境相关配置的加载工作,主线程才继续执行,就可以利用 CountDownLatch 来实现。

    使用
    参考地址:https://www.cnblogs.com/fengzheng/p/9153720.html

    原理:
    定义了内部 类 Sync 继承了 AQS ,重写了 tryAquire tryAcquireShared releaseAquire releaseAcquireShared
    维护了一个 FIFO的队列。