
图文
【JDK源码笔记】- 快进来!花几分钟看一下 ReentrantReadWriteLock 的原理!
解释 ReentrantReadWriteLock 的公平策略、读写重入、锁降级、Condition 及读锁写锁的状态编码。
图文

解释 ReentrantReadWriteLock 的公平策略、读写重入、锁降级、Condition 及读锁写锁的状态编码。

围绕 AQS、state、可重入、公平与非公平策略,梳理 ReentrantLock 的加锁、tryLock 和解锁源码。

介绍使用 Maven Archetype 提取多模块项目模板、配置元数据与自定义属性,并在 IDEA 中生成新项目。

结合源码和队列图,梳理 AQS 的 Node 状态、独占与共享模式、入队、取消、唤醒及资源释放流程。

从许可模型和验证实验出发,解释 LockSupport 的 park、unpark、阻塞诊断与源码实现。

结合 Striped64 和 Cell 源码,说明 LongAdder 如何通过分散竞争提升高并发累加性能。

从用户信息保存示例出发,跟踪 ThreadLocal、ThreadLocalMap、弱引用和 remove 的实现。

从乐观锁和 AtomicInteger 的使用出发,结合 JUC 源码解释 CAS、Unsafe 与原子更新的关系。

先介绍红黑树的性质、旋转和插入,再说明 HashMap 链表转红黑树及相关节点操作。

沿着 HashMap 的 put 流程,说明哈希定位、链表或红黑树处理、容量阈值与 resize 扩容。