CountDownLatch 与 CyclicBarrier
所属分类 java
浏览量 1457
CountDownLatch CyclicBarrier
减计数方式 加计数方式
计算为0时释放所有等待的线程 计数达到指定值时释放所有等待线程
计数为0时,无法重置 计数达到指定值时,计数置为0重新开始
不可重复使用 可重复使用
CountDownLatch
调用countDown()方法计数减一,调用await()方法只进行阻塞,对计数没任何影响
CyclicBarrier
调用await()方法计数加1,若加1后的值不等于构造方法的值,则线程阻塞
CountDownLatch 一个线程(或多个)等待另外的n个线程干完某件事情之后才能继续执行。
CyclicBarrier n个线程相互等待,只要有一个没完成,所有线程都得等待。
例子代码
https://gitee.com/dyyx/hellocode/blob/master/src/dyyx/conc/CountDownLatchTest.java
https://gitee.com/dyyx/hellocode/blob/master/src/dyyx/conc/CyclicBarrierTest.java
上一篇
下一篇
redis的VM机制
rocketmq知识点
链式调用优缺点
让自己更优秀的16条法则
kafka高可用机制简介
kafka消息投递语义