java - java.util.concurrent.CountDownLatch 的实现是否可以处理向上递增的初始计数?

标签 java multithreading semaphore

我需要一个 java.lang.Thread 来等待不可预测数量的前驱线程完成,作为“阻塞点”,然后再释放另一批线程的产生。 CountDownLatch 似乎如果有一个用于 countUp 和 countDown 的方法就可以工作。

是否有这样的实现,或者我需要自己实现信号量奇点吗?

最佳答案

看看java.util.concurrent.Phaser

A reusable synchronization barrier, similar in functionality to CyclicBarrier and CountDownLatch but supporting more flexible usage.

Unlike the case for other barriers, the number of parties registered to synchronize on a phaser may vary over time. Tasks may be registered at any time . . . and optionally deregistered upon any arrival

关于java - java.util.concurrent.CountDownLatch 的实现是否可以处理向上递增的初始计数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30496608/

相关文章:

java - 如何使用 proguard 混淆多模块 spring-boot 项目?

java - 为什么本地主机 :8081/share can not be open?

java - 不区分大小写的字符串比较奇怪的行为

objective-c - 性能测试 : sem_t v. s。 dispatch_semaphore_t 和 pthread_once_t 对比dispatch_once_t

c - 意外输出运行信号量

java - 随后在同一线程上获取信号量

c - 生产者消费者问题中的竞争条件

java - 解释 Runnable 和 Invoke()

java - 总是有同一个线程处于等待状态

c - 当我调试死锁情况消失时......那么我到底是怎么找到错误的呢?