在Java多线程中如何使用CountDownLatch?

在Java多线程中如何使用CountDownLatch?,第1张

在Java多线程中如何使用CountDownLatch?

是的,你理解正确。

CountDownLatch
按照闩锁原理工作,主线程将等待直到门打开。一个线程等待n个线程(创建时指定)
CountDownLatch

任何调用,通常是应用程序的主线程,都

CountDownLatch.await()
将等待直到计数达到零或被另一个线程中断为止。所有其他线程在
CountDownLatch.countDown()
完成或准备就绪时都需要通过调用来递减计数。

一旦计数达到零,等待线程就会继续。的缺点/优点之一

CountDownLatch
是不可重用:一旦计数达到零,就不能再使用
CountDownLatch
了。

编辑:

使用

CountDownLatch
当一个线程(比如主线程),需要等待一个或多个线程来完成,才能继续处理。

CountDownLatch
在Java 中使用的经典示例是使用服务体系结构的服务器端核心Java应用程序,其中多个线程提供了多个服务,并且在所有服务都成功启动之前,该应用程序无法开始处理。

PS OP的问题有一个非常简单的示例,因此我没有列出。



欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5017584.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-11-14
下一篇 2022-11-15

发表评论

登录后才能评论

评论列表(0条)

保存