![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
juc学习笔记
文章平均质量分 67
学习juc编程中的学习记录
迪迦不喝可乐
这个作者很懒,什么都没留下…
展开
-
juc学习笔记四-CountDownLatch和CyclicBarrier
参考:https://www.pdai.tech/md/java/thread/java-thread-x-juc-tool-countdownlatch.html 1 CountDownLatch CountDownLatch没有实现其他接口,其仍然依赖AQS实现。在创建CountDownLatch时,需要制定当前已经被申请的锁资源数量。 CountDownLatch的构造方法: public CountDownLatch(int count) { if (count < 0原创 2022-03-30 17:40:07 · 94 阅读 · 0 评论 -
juc学习笔记三-并发集合
1 ConcurrentLinkedQueue HOPS延迟更新策略: tail:当前tail节点的下一个节点为null时,只插入节点但是不更新tail;当前tail节点的下一个节点不为null时,才会定位真正的tail。 head:当前head的item不为null时只删除节点不更新head;当前head的item为null的时候才定位新的head。 HOPS策略减少了CAS更新,采用无锁的方式,可以达到更高的并发。 2 BlockingQueue和BlockingDeque 2.1 简介 Blockin原创 2022-03-30 02:29:35 · 423 阅读 · 0 评论 -
juc学习笔记二-ReentrantReadWriteLock
1 介绍 ReentrantReadWriteLock实现了自ReadWriteLock接口,与ReentrantLock一样依赖AQS实现申请锁和释放锁。ReentrantReadWriteLock内部有写锁和读锁,在不同线程之间两种锁互斥(A线程有写锁,B线程有读锁,两个线程不能同时执行)。读锁为共享锁(读锁不进入CLH队列),写锁为独享锁。 以下是ReentrantReadWriteLock读/写锁申请锁和释放锁方法。 ReentrantReadWriteLock reentrantReadWrite原创 2022-03-29 15:54:05 · 523 阅读 · 0 评论 -
juc学习笔记一-ReentrantLock
学习过程中参考了: JUC锁: ReentrantLock详解 | Java 全栈知识体系 (pdai.tech) 1LockSupport 1.1 LockSupport简介 LockSupport用来创建锁和其他同步类的基本线程阻塞原语。 1.2 核心方法 public native void park(boolean isAbsolute, long time); public native void unpark(Thread thread); park:阻塞线程,并且线程在发生以下几种情况之前都原创 2022-03-29 00:35:24 · 398 阅读 · 0 评论