1. 框架设计理解:面试官不仅仅是想知道 AQS 是 "一个队列",更是想知道你是否理解它的 模板方法设计模式——AQS 定义了获取/释放的骨架流程,子类只需实现 "尝试获取" 和 "尝试释放" 的逻辑。
more...
1. 框架设计理解:面试官不仅仅是想知道 AQS 是 "一个队列",更是想知道你是否理解它的 模板方法设计模式——AQS 定义了获取/释放的骨架流程,子类只需实现 "尝试获取" 和 "尝试释放" 的逻辑。
more...
1. 原子操作原理:面试官不仅仅是想知道 CAS 是 "比较并交换",更是想知道你是否理解 CAS 是一条 CPU 原子指令,以及它为什么比加锁更轻量。
more...
1. ThreadLocal 机制理解:面试官不仅仅是想知道你会不会用 ThreadLocal,更是想知道你是否清楚 ThreadLocal 的数据隔离特性——它只对当前线程可见,子线程天然拿不到父线程的数据。
more...
1. 原子类掌握度:面试官不仅仅是想知道这两个类 API 的区别,更是想知道你是否理解 AtomicLong 的 CAS 机制,以及它在高并发下的瓶颈在哪。
more...
1. 锁机制的全面认知:面试官不仅仅是想让你列几条不同点,更是想知道你是否理解两种锁的设计哲学——synchronized 是 JVM 层面的 "内建锁",ReentrantLock 是 API 层面的 "显式锁"。
more...
1. 锁优化机制理解:面试官不仅仅是想知道 "锁会升级" 这个结论,更是想知道你是否理解 JDK 6 引入锁升级的动机——从 "一切皆重量级锁" 到 "按竞争程度分级优化" 的设计思路。
more...
这道题我愿意称之为 Java 并发面试的 "试金石"。能回答 "字节码指令 monitorenter/monitorexit" 的算及格,能说出 Monitor、对象头、Mark Word 的算良好,能把锁升级过程(偏向锁 → 轻量级锁 →
more...
1. JMM 理解深度:面试官不仅仅是想知道 "内存屏障" 这四个字,更是想确认你是否理解 Java 内存模型的主内存-工作内存交互机制,以及 volatile 在这个模型中扮演的角色。
more...