
精选·Java与并发2026-07-13
CountDownLatch、CyclicBarrier 与 Semaphore 的原理和使用场景
对比三个 JUC 同步工具的实现原理(AQS 共享模式/Condition/许可)、可复用性差异和典型场景,结合大数据任务编排给出落地示例。
91学AI·8 阅读
共 7 篇文章

对比三个 JUC 同步工具的实现原理(AQS 共享模式/Condition/许可)、可复用性差异和典型场景,结合大数据任务编排给出落地示例。

讲清 ThreadLocal 的线程私有副本机制、Entry 弱引用设计导致的内存泄漏原因、线程池场景的正确用法,以及和 InheritableThreadLocal 的区别。

讲清 ThreadPoolExecutor 七个参数的任务调度流程、四种内置拒绝策略、Executors 工厂的坑,以及 IO/CPU 密集型线程数估算方法。

讲清 AQS 的 state+CLH 队列+模板方法三大核心、独占与共享两种模式,以及 ReentrantLock 公平/非公平锁在 AQS 上的实现差异。

从对象头 Mark Word 讲起,讲清 JDK 6 之后 synchronized 的四级锁升级路径、每级的实现原理和触发条件,以及与 ReentrantLock 的对比。

讲清 JMM 的主内存/工作内存抽象、volatile 保证可见性和有序性但不保证原子性的原因、内存屏障原理,以及双重检查锁的正确写法。

讲清分段锁 Segment 到 CAS+synchronized 桶锁的演进逻辑、put 流程、size 统计方式变化,以及为什么读操作完全不加锁。