CountDownLatch
We'll cover the following...
Explanation
CountDownLatch
is a synchronization primitive that comes with the java.util.concurrent
package. It can be used to block a single or multiple threads while other threads complete their operations.
A CountDownLatch
object is initialized with the number of tasks/threads it is required to wait for. Multiple threads can block and wait for the CountDownLatch
object to reach zero by invoking await()
. Every time a thread finishes its work, the thread invokes countDown()
which decrements the counter by 1. Once the count reaches zero, threads waiting on the await()
method are notified and resume execution.
The counter in the CountDownLatch
cannot be reset making the CountDownLatch
object unreusable. A ...