CountDownLatch如其所写,是一个倒计数的锁存器,当计数减至0时触发特定的事件。利用这种特性,可以让主线程等待子线程的结束。
private static final int THREADS = 100;
/** 预设计数器 */
final CountDownLatch ct = new CountDownLatch(THREADS);
for (int i = 0; i < THREADS; i++) {
new Thread() {
public void run() {
//做多线程操作.
//减1操作
ct.countDown();
}
}.start();
}
//阻塞,直到THREADS减到0为止(等待所以线程结束)
ct.await();