CountDownLatch 核心方法
时间: 2023-11-01 16:49:30 浏览: 77
CountDownLatch的使用
CountDownLatch 类的核心方法有两个:countDown() 和 await()。
1. countDown() 方法:该方法将锁存器的计数器减一。如果计数器已经为零,则任何对 await() 方法的调用将立即返回。如果计数器大于零,则在计数器到达零之前,任何对 await() 方法的调用都将被阻塞。
2. await() 方法:该方法会一直阻塞当前线程,直到锁存器的计数器为零。如果计数器为零,则该方法将立即返回。如果计数器不为零,则该方法将一直阻塞,直到计数器减为零或者等待线程被中断。
这两个方法是 CountDownLatch 类中最基本的方法。通过这两个方法的调用,多个线程可以协同完成某个任务。其中一个线程调用 countDown() 方法,减少计数器的值,而另一个或多个线程调用 await() 方法,等待计数器的值为零。当计数器的值为零时,所有等待的线程将被唤醒,继续执行任务。
阅读全文