CountDownLatch API 方法解释
时间: 2023-08-14 08:08:13 浏览: 82
java线程api
4星 · 用户满意度95%
CountDownLatch 是 Java 中的一个同步工具类,它可以让一个或多个线程等待其他线程执行完毕后再继续执行。它提供了下面几个方法:
1. `CountDownLatch(int count)`:构造方法,传入一个计数器 count,表示需要等待的线程数量。
2. `void await()`:等待计数器归零,当前线程阻塞直到计数器为零。
3. `boolean await(long timeout, TimeUnit unit)`:等待计数器归零,当前线程阻塞直到计数器为零或者超时时间到达。
4. `void countDown()`:计数器减 1,表示一个线程已经执行完毕。
其中,`await()` 方法和 `await(long timeout, TimeUnit unit)` 方法是阻塞方法,会导致当前线程阻塞,直到计数器为零或者超时时间到达。`countDown()` 方法是非阻塞方法,只是将计数器减 1,表示一个线程已经执行完毕。在计数器为零之前,调用 `await()` 方法或 `await(long timeout, TimeUnit unit)` 方法的线程都会被阻塞。当计数器为零时,所有阻塞的线程将继续执行。
阅读全文