CyclicBarrier(int parties, Runnable barrierAction) 详解
来源:互联网 发布:十大社交软件 编辑:程序博客网 时间:2024/06/06 09:27
CyclicBarrier(int parties, Runnable barrierAction) :创建一个新的 CyclicBarrier,它将在给定数量的参与者(线程)处于等待状态时启动,并在启动 barrier 时执行给定的屏障操作,该操作由最后一个进入 barrier 的线程执行。
为了进行说明,我们使用下面的例子:
import java.util.concurrent.CyclicBarrier;public class CyclicBarrierTest2 { static CyclicBarrier c = new CyclicBarrier(2, new A()); public static void main(String[] args) { new Thread(new Runnable() { @Override public void run() { try { System.out.println("子:"+Thread.currentThread().toString()); c.await(); } catch (Exception e) { } System.out.println(1); } },"子线程").start(); try { System.out.println("主:"+Thread.currentThread().toString()); c.await(); } catch (Exception e) { } System.out.println(2); } static class A implements Runnable { @Override public void run() { System.out.println(Thread.currentThread().toString()); System.out.println(3); } }}测试结果如下:
主:Thread[main,5,main]子:Thread[子线程,5,main]Thread[子线程,5,main]312或者
子:Thread[子线程,5,main]主:Thread[main,5,main]Thread[main,5,main]321测试结果说明,任务barrierAction确实由最后一个到达屏障的线程进行执行,并且执行完了之后该线程会继续从自己当初await的地方再次开始执行。
0 1
- CyclicBarrier(int parties, Runnable barrierAction) 详解
- java CyclicBarrier(关卡)详解
- CyclicBarrier使用详解
- CountDownLatch与CyclicBarrier详解
- CyclicBarrier类 详解
- CyclicBarrier使用详解
- Runnable与Callable 详解
- CyclicBarrier 和CountDownLatch使用详解
- java线程:CyclicBarrier使用详解
- Java多线程--CyclicBarrier使用详解
- int socket(int,int,int)详解
- cyclicBarrier
- CyclicBarrier
- CyclicBarrier
- CyclicBarrier
- CyclicBarrier
- CyclicBarrier
- CyclicBarrier
- 淘宝网分布式存储技术视频
- 2016-2017学年第二学期C++第五章(2)
- NSString的内存管理
- Xargs用法详解
- python读取文件并绘制三维点图
- CyclicBarrier(int parties, Runnable barrierAction) 详解
- sublime的快捷键
- 秒杀系统设计详解
- java转型
- MongoDB学习记录03-MongoDB查询(java-driver)
- Learning Spark笔记7-聚合
- OS X 系统安装mkdocs后命令无法找到错误解决
- PYthon 函数-递归函数
- R-FCN阅读笔记