码迷,mamicode.com
首页 > 其他好文 > 详细

CountDownLatch与CyclicBarrier区别,举例

时间:2017-11-04 13:31:38      阅读:173      评论:0      收藏:0      [点我收藏+]

标签:cli   wait   bar   prepare   rri   一个   阻塞   举例   barrier   

1、CountDownLatch 等待一个或多个线程执行完,再执行。

栗子:飞机起飞前各个检查完,起飞。

初始化:

CountDownLatch countD = new CountDownLatch(3);

起飞进程wait(),阻塞;

每个检查完,countD.countDown();

当countD直到为0,起飞。

 

2、CyclicBarrier 等待过个线程准备好后,统一执行。

栗子:所有飞机到位后,统一起飞。

CyclicBarrier barrier = new CyclicBarrier(3);

for(int i = 0; i < 3; i++){

  plan.prepare();

  barrer.await();

}

 

CountDownLatch与CyclicBarrier区别,举例

标签:cli   wait   bar   prepare   rri   一个   阻塞   举例   barrier   

原文地址:http://www.cnblogs.com/codegod/p/7782794.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!