请谈谈 Java 中锁的实现原理,比如 synchronized 和 Lock 的区别及底层机制。
考察说明
考察对并发锁机制、底层实现和适用场景的理解深度
回答思路
- 说明 synchronized 与 Lock 在用法和功能上的区别
- 阐述 synchronized 基于 Monitor 及锁升级(偏向锁、轻量级锁、重量级锁)的机制
- 解释 Lock(如 ReentrantLock)基于 AQS 的实现原理,包括状态、等待队列和 CAS
- 分析二者在公平性、可中断、超时、条件等待等能力上的差异
本题已收录答题指导
本题附完整参考答案与评分标准
登录后可查看结构化答题指导;也可以直接开一场模拟面试,AI 面试官用本题实时追问并给出评分。