首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >同步不通过循环屏障工作。

同步不通过循环屏障工作。
EN

Stack Overflow用户
提问于 2015-07-07 22:55:41
回答 1查看 83关注 0票数 1
代码语言:javascript
复制
public class Test {

    final int counter = 0; // it may be a different number
    int add = 0;

    public synchronized void testSync() throws InterruptedException {
        add++;
        if (add == counter) {
            add = 0;

            notifyAll();
        } else {
            while (add > 0) {

                wait();
            }
        }

    }
}

我如何修复代码以使其工作?我需要使它作为循环屏障工作。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-07-07 23:31:41

代码语言:javascript
复制
public class Test {
    final int counter = 0; // it may be a different number
    final CyclicBarrier barrier = new CyclicBarrier(counter);

    public void testSync() throws InterruptedException, BrokenBarrierException {
        barrier.await();
    }
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/31280779

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档