后端岗位面试题更新 2026-08-05

synchronized的实现原理是什么?

纷享销客北森携程58集团淘天集团后端开发互联网/IT消费品/零售专业服务问题拆解技术原理Java

考察说明

考察对Java内置锁机制的底层实现理解,包括锁升级、内存语义和底层指令

回答思路

  1. 能说明synchronized基于Monitor对象实现,每个对象关联一个monitor
  2. 描述锁升级过程:无锁→偏向锁→轻量级锁→重量级锁,以及各自的适用场景
  3. 解释偏向锁的获取和撤销机制,轻量级锁通过CAS自旋获取,重量级锁依赖操作系统的互斥量
  4. 能说明synchronized保证的内存可见性和原子性,涉及管程(Monitor)和内存屏障
  5. 能提及JVM优化如锁消除、锁粗化,以及JDK版本对偏向锁的调整(如JDK15默认禁用)