JVM-内存相关
偏向锁
如果不存在线程竞争的一个线程获得了锁,那么锁就进入偏向状态,此时Mark Word的结构变为偏向锁结构,锁对象的锁标志位(lock)被改为01,偏向标志位(biased_lock)被改为1,然后线程的ID记录在锁对象的Mark Word中(使用CAS操作完成)。以后该线程获取锁时判断一下线程ID和标志位,就可以直接进入同步块,连CAS操作都不需要,这样就省去了大量有关锁申请的操作,从而也就提升了程序的性能。
批量重偏向
批量偏向锁撤销
轻量锁
重量锁
总结
锁膨胀流程
锁撤销流程
引用
JVM-内存相关
https://gallrax.github.io/2023/03/27/JVM-锁相关/