- 博客(2)
- 收藏
- 关注
原创 CountDownLatch源码解析
文章只是简单记述下CountDownLatch的原理,看过AQS、ReentrantLock和ReentrantReadWriteLock的文章后,可以大致清楚了解和AQS相关工具的使用。CountDownLatch本身也是通过一个内部类Sync实现AQS,所以其构造方法内部也是实现如何去初始化这个Sync的过程。 public CountDownLatch(int count) { if (count < 0) throw new IllegalArgumentExc
2020-12-05 23:39:53 238 1
原创 CyclicBarrier源码解析
和CountDownLatch不同,CyclicBarrier表示调用await方法之后,线程会阻塞知道,知道一定数目的线程执行了await之后才会全部唤醒。而且CyclicBarrier还有两个功能点,支持重复使用和唤醒时回调。所以我们需要第一步了解到CyclicBarried是如何等待多个线程等待并且一起唤醒的。1、初始化CyclicBarrierCyclicBarrier默认的初始化比较简单,parties表示需要等待多少个线程await后才唤醒。 public CyclicB
2020-12-05 23:39:27 240
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人