b2科目四模拟试题多少题驾考考爆了怎么补救
b2科目四模拟试题多少题 驾考考爆了怎么补救

“JUC锁”10之 CyclicBarrier原理和示例

电脑杂谈  发布时间:2016-04-16 19:06:50  来源:网络整理

你是否正在寻找关于cyclicbarrier的内容?让我把最吸引人的东西奉献给你:

概要

本章介绍JUC包中的cyclicbarrier锁。内容包括:

转载请注明出处:

cyclicbarrier简介

cyclicbarrier是一个同步辅助类,允许一组线程互相等待,直到到达某个公共屏障点 (common barrier point)。因为该 barrier 在释放等待线程后可以重用,所以称它为循环 的 barrier,。

注意比较CountDownLatch和cyclicbarrier
(01) CountDownLatch的作用是允许1或N个线程等待其他线程完成执行;而cyclicbarrier则是允许N个线程相互等待。
(02) CountDownLatch的计数器无法被重置;cyclicbarrier的计数器可以被重置后使用,因此它被称为是循环的barrier。


cyclicbarrier函数列表

CyclicBarrier(int parties) 创建一个新的 CyclicBarrier,它将在给定数量的参与者(线程)处于等待状态时启动,但它不会在启动 barrier 时执行预定义的操作。 CyclicBarrier(int parties, Runnable barrierAction) 创建一个新的 cyclicbarrier,它将在给定数量的参与者(线程)处于等待状态时启动,并在启动 barrier 时执行给定的屏障操作,该操作由最后一个进入 barrier 的线程执行。 int await() 在所有参与者都已经在此 barrier 上调用 await 方法之前,将一直等待。 int await(long timeout, TimeUnit unit) 在所有参与者都已经在此屏障上调用 await 方法之前将一直等待,或者超出了指定的等待时间。 int getNumberWaiting() 返回当前在屏障处等待的参与者数目。 int getParties() 返回要求启动此 barrier 的参与者数目。 boolean isBroken() 查询此屏障是否处于损坏状态。 void reset() 将屏障重置为其初始状态。

cyclicbarrier数据结构

cyclicbarrier的UML类图如下:

“JUC锁”10之 CyclicBarrier原理和示例

cyclicbarrier是包含了"ReentrantLock对象lock"和"Condition对象trip",它是通过独占锁实现的。下面通过源码去分析到底是如何实现的。

cyclicbarrier源码分析(基于JDK1.7.0_40)

cyclicbarrier完整源码(基于JDK1.7.0_40)

* ORACLE PROPRIETARY/CONFIDENTIAL. Use is subject to license terms. 3 * 4 * 5 * 6 * 7 * 8 * 9 * 10 * 11 * 12 * 13 * 14 * 15 * 16 * 17 * 18 * 19 * 20 * 21 * 22 * * 27 * 28 * 29 * 30 * 31 * Written by Doug Lea with assistance from members of JCP JSR-166 32 * Expert Group and released to the public domain, as explained at java.util.concurrent; 37 import java.util.concurrent.locks.*; * A synchronization aid that allows a set of threads to all wait for 41 * each other to reach a common barrier point. CyclicBarriers are 42 * useful in programs involving a fixed sized party of threads that 43 * must occasionally wait for each other. The barrier is called 44 *

以上就是关于cyclicbarrier的全部内容,相信你一定会非常满意。


本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/jisuanjixue/article-1437-1.html

    相关阅读
      发表评论  请自觉遵守互联网相关的政策法规,严禁发布、暴力、反动的言论

      • 帕里
        帕里

        中国捍卫自身主权和海洋权益的立场坚定不移

      热点图片
      拼命载入中...