线程并发工具类之CyclicBarrier的使用及原理分析

一、定义(原文链接:http://www.studyshare.cn/blog/details/1156/0 )

CyclicBarrier是线程并发工具类之一,俗称栅栏。当一组线程全部执行完后,到达栅栏屏障,就放开屏障,继续往后执行。举个简单例子:几个家庭约定一个地点集合去郊游,只有当所有家庭都到达后再商量下一步计划,只要有一个没到,先到达的家庭都必须等待。
java开发工具下载地址及安装教程大全,点这里。更多深度技术好文,在这里。

二、示例demo

实现:用5个子线程去执行任务,当任务执行完成后,交出自己的执行结果,再被统一释放(开放栅栏)去做自己的事情,而之前5个子线程交出的结果被另外一个线程使用做其他工作。

代码如下:
线程并发工具类之CyclicBarrier的使用及原理分析_第1张图片
线程并发工具类之CyclicBarrier的使用及原理分析_第2张图片

执行结果:
线程并发工具类之CyclicBarrier的使用及原理分析_第3张图片
java开发工具下载地址及安装教程大全,点这里。更多深度技术好文,在这里。

你可能感兴趣的:(线程并发工具类之CyclicBarrier的使用及原理分析)