我是靠谱客的博主 鲤鱼皮带,这篇文章主要介绍java CyclicBarrier用法,现在分享给大家,希望可以做个参考。

CyclicBarrier主要用于等待一组线程都执行到某个时刻。
它和CountDownLatch的区别:CountDownLatch用在等待某个事件,而CountDownLatch用于等待线程。
CountDownLatch用于一个或者多个线程等待其他一组线程。
CyclicBarrier用于一组线程之间的相互等待。
下面是一个例子:


public class CycleBarrierTest implements Runnable {
private CyclicBarrier cyclicBarrier;

public CycleBarrierTest(CyclicBarrier cyclicBarrier) {
this.cyclicBarrier = cyclicBarrier;
}

@Override
public void run() {
System.out.println("准备执行任务");
try {
Thread.sleep(5000);
System.out.println("执行任务完毕");
cyclicBarrier.await();
} catch (Exception e) {
e.printStackTrace();
}
System.out.println("执行其他任务");
}

public static void main(String[] args) {
CyclicBarrier barrier = new CyclicBarrier(3);
for(int i=0;i<3;i++){
CycleBarrierTest barrierTest = new CycleBarrierTest(barrier);
Thread thread = new Thread(barrierTest);
thread.start();
}
}

}

最后

以上就是鲤鱼皮带最近收集整理的关于java CyclicBarrier用法的全部内容,更多相关java内容请搜索靠谱客的其他文章。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(137)

评论列表共有 0 条评论

立即
投稿
返回
顶部