Java并发实例之CyclicBarrier的使用-创新互联

最近一直整并发这块东西,顺便写点Java并发的例子,给大家做个分享,也强化下自己记忆,如果有什么错误或者不当的地方,欢迎大家斧正。

创新互联是一家专业提供昌江黎族企业网站建设,专注与做网站、成都网站设计、H5高端网站建设、小程序制作等业务。10年已为昌江黎族众多企业、政府机构等服务。创新互联专业网络公司优惠进行中。

CyclicBarrier是一种多线程并发控制实用工具,和CountDownLatch非常类似,它也可以实现线程间的计数等待,但是它的功能比CountDownLatch更加复杂且强大。

CyclicBarrier的介绍


CyclicBarrier 的字面意思是可循环(Cyclic)使用的屏障(Barrier)。它要做的事情是,让一组线程到达一个屏障(也可以叫同步点)时被阻塞,直到最后一个线程到达屏障时,屏障才会开门,所有被屏障拦截的线程才会继续干活。线程进入屏障通过CyclicBarrier的await()方法。

CyclicBarrier默认的构造方法是CyclicBarrier(int parties),其参数表示屏障拦截的线程数量,每个线程调用await方法告诉CyclicBarrier我已经到达了屏障,然后当前线程被阻塞。

CyclicBarrier还提供一个更高级的构造函数CyclicBarrier(int parties, Runnable barrierAction),用于在线程到达屏障时,优先执行barrierAction这个Runnable对象,方便处理更复杂的业务场景。

public CyclicBarrier(int parties) {
  this(parties, null);
}
public int getParties() {
  return parties;
}

网站栏目:Java并发实例之CyclicBarrier的使用-创新互联
文章路径:http://bzwzjz.com/article/dojogc.html

其他资讯

Copyright © 2007-2020 广东宝晨空调科技有限公司 All Rights Reserved 粤ICP备2022107769号
友情链接: 网站制作 成都网站建设公司 成都网站建设 成都响应式网站建设公司 公司网站建设 网站制作 成都品牌网站设计 定制网站建设多少钱 成都定制网站建设 企业网站建设 响应式网站设计 梓潼网站设计 成都企业网站制作 攀枝花网站设计 高端定制网站设计 成都商城网站建设 成都网站建设 温江网站设计 重庆电商网站建设 成都网站制作 网站建设公司 网站设计制作