对象的组成
2021-01-18 16:55:14 0 举报
Java对象的组成部分
作者其他创作
大纲/内容
01
指向栈中锁记录的指针
2bit
实例数据Instance data
锁标志位
Object
空
对齐填充Padding(保证对象是8个字节的整数倍)
10
1
11
4bit
线程ID
分代年龄
GC标记
偏向锁
对象的hashCode
轻量缓锁
1bit
23bit
Object Header(对象头) 1. Mark Word标记字段(32位占4字节,64位占8字节)自身运行时数据哈希值,GC分代年龄,锁状态标志,线程持有锁,偏向线程ID,偏向时间戳。2. Klass Pointer类型指针(开启压缩站4字节,关闭压缩占8字节)类的元数据的指针。3. 数组长度(4字节,只有数组对象才有)。
Epoch
锁状态
重量缓锁
无锁态
00
指向互斥量(重量级锁)的指针
是否偏向锁
25bit
0 条评论
下一页