同步器是一些使线程能够等待另一个线程的对象, 以允许他们协调工作.
同步器的种类 CountDownLatch, Semaphore, CyclicBarrier and Exchanger.
CountDownLatch倒计数同步器是一个一次性障碍, 允许一个或多个线程等待一个或多个其它线程做完某件事情.
调用CountDownLatch(int number)构造器初始化计数.
在等待线程上调用CountDownLatch.await()以阻塞线程.
在工作线程上调用CountDownLatch.countDown()以减少计数, 当计数为0时激活其它所有等待线程.
在实际工作中根据业务逻辑的复杂度, 有可能同时有多个同步器存在, 多个线程的初始化, 执行, 收尾等如果需要多次等待则需要多个同步器.
在使用多个同步器时 可能出现死锁情形, 需要特别注意(很好用但也很危险).