《深入理解Java虚拟机》:锁优化( 二 )


轻量级锁如果有另一线程试图锁定某个被偏斜过的对象 , JVM 就撤销偏斜锁 , 切换到轻量级锁实现 。 在对象头部用00标记 。
轻量级锁依赖 CAS 操作 Mark Word 来试图获取锁 , 如果重试成功 , 就使用普通的轻量级锁;否则 , 进一步升级为重量级锁 , 在对象头部用10标记 。
重量级锁重量级锁就是传统的synchronized加互斥锁 , 涉及阻塞等待、线程上下文切换等操作 。
锁优化的最终目的 , 就是尽量在获得锁之前不成为重量级锁 。
内容来源于《深入理解Java虚拟机》第十三章13.3节内容 。
【《深入理解Java虚拟机》:锁优化】#程序员##JVM#