synchronized锁升级

时间:2020-02-09 15:54:16   收藏:0   阅读:70

技术分享图片

对象实例

在JDK1.6开始,对象实例在堆中会被划分三个组成部分:对象头,实例数据,和对其填充。

对象头

我们在锁升级的过程中只需要关注Mark World(它记录了对象,锁和垃圾回收相关的信息,在64位JVM中其长度为64bit)的位信息包括了如下组成信息:
- 无锁标记: 当前对象没有上锁。
1. 偏向锁标记:
2. 轻量级锁标记:
3. 重量级锁标记:直接从用户态切换到内核态。
4. GC标记: 判断对象是否可被垃圾收回收掉。

偏向锁

轻量级锁

原文:https://www.cnblogs.com/karlMa/p/12287081.html

评论(0
© 2014 bubuko.com 版权所有 - 联系我们:wmxa8@hotmail.com
打开技术之扣,分享程序人生!