Juc

java中的JUC组件(Semaphore、CountDownLatch、CyclicBarrier)

目录 1、简介 2、Semaphore2.1、源码实现: 3、CountDownLatch3.1、源码实现 4、CyclicBarrier4.1、源码实现 1、简介 Semaphore、CountDownLatch、CyclicBarrier 这三个工具类都是用于并发控制的操作,底层都是基于AQS去实现的; Semaphore(信...

JUC之StampedLock读写锁增强辅助类

一、简介   StampedLock类,在JDK1.8时引入,是对读写锁ReentrantReadWriteLock的增强,该类提供了一些功能,优化了读锁,写锁的访问,同时是读写锁之间可以互相转换,更细粒度控制并发。   首先明确下,该类的设计初衷是作为一个内部工具类,用于辅助开发其他线程安全组件,用得好,该类可以提升系统性能,用不好,容易产生死锁和其他莫...

JUC 并发编程--04 常用的辅助类CountDownLatch , CyclicBarrier , Semaphore , 读写锁 , 阻塞队列,CompletableFuture(异步回调)

CountDownLatch 相当于一个减法计数器, 构造方法指定一个数字,比如6, 一个线程执行一次,这个数字减1, 当变为0 的时候, await()方法,才开始往下执行,, 看这个例子 CyclicBarrier 的用法, 字面意思:循环栅栏, 这是构造方法, 第一个参数parties 是线程数量, 第二个参数是barrierAction:...