首页  

CountDownLatch 与 CyclicBarrier     所属分类 java 浏览量 1278
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消息投递语义