【发布时间】:2018-01-16 01:46:15
【问题描述】:
我希望在 Java 并发世界中找到倒计时屏障/同步:我想要一个类让线程 acquire() 用于 overall n 次而不是屏障块t 秒(睡眠)。
在延迟/睡眠之后,应该进一步处理线程。 Semaphore 不能解决问题,因为所有线程都需要被阻塞。我想它可以用ReentrantLock 来实现,或者用compare and swap (CAS) 甚至更好。 CountDownLatch 是不够的,因为我想在达到条件后重置计数。
你能在 Java 7+ 中给我一个提示吗?
【问题讨论】:
-
CountDownLatch 怎么样? docs.oracle.com/javase/7/docs/api/java/util/concurrent/…
-
嗯?让线程
acquire()n次并休眠t秒?睡什么?所有的线程?一个单独的线程?更清楚地解释自己。 -
@Kayaman:我想我写了一个循环障碍的简化版本。
标签: java java-7 countdown java.util.concurrent barrier