对象内存布局
2021-04-11 11:09:27 9 举报
学习笔记
作者其他创作
大纲/内容
对象内存布局
Markword
2bit
分代年龄
1bit
偏向锁
ByteCode
Memory
指向线程栈中的LockRecord的指针
Oops
class pointer
4 byte
* 未开启指针压缩是 8byte
偏向锁 1
普通对象
重量级锁
普通对象 | 数组对象
当前线程指针JavaThread*
锁标志 01
T.Class
锁信息 64bit(8byte)
Method Area
轻量级锁
ClassPointer
29bit
Epoch
MarkWord
Data
非偏向锁 0
unused
4bit
25bit
锁标志 10
t=new T()
Arr len
HashCode(如果调用)
8 byte
Padding
无锁态
锁标志 11
指向互斥量(重量级锁)的指针
锁标志 00
Heap
锁状态
GC标志
数组对象
0 条评论
下一页