线程控制器
CountDownLatch
CountDownLatch类的基本信息
public class CountDownLatch extends Object
允许一个或多个线程等待直到在其他线程中执行的一组操作完成的同步辅助。 CountDownLatch用给定的计数来初始化。
配合await方法阻塞,直到由于countDown()方法的调用而导致当前计数达到零,之后所有等待线程被释放,( 这是一个一次性的现象 - 计数无法重置。 如果您需要重置计数的版本,请考虑使用CyclicBarrier )。
CountDownLatch的用途------
CountDownLatch用作一个简单的开/关锁存器,所有线程调用await在门口等待,直到被调用countDown()的线程打开。
一个CountDownLatch初始化N可以用来做一个线程等待,直到N个线程完成某项操作,或某些动作已经完成N次,在执行后续操作.
构造方法
CountDownLatch(int count)
构造一个以给定计数 CountDownLatch CountDownLatch。
CountDownLatch类的常用方法
void await()
导致当前线程等到锁存器计数到零,除非线程是 interrupted 。
boolean await(long timeout, TimeUnit unit)
使当前线程等待直到锁存器计数到零为止ÿ