虛擬機位數
|
頭對象結構
|
說明
|
32/64bit
|
Mark Word
|
存儲對象的hashCode、鎖信息或分代年齡或GC標誌等信息
|
32/64bit
|
Class Metadata Address
|
類型指針指向對象的類元數據,JVM經過這個指針肯定該對象是哪一個類的實例。
|
鎖狀態
|
25bit
|
4bit
|
1bit是不是偏向鎖
|
2bit 鎖標誌位
|
無鎖狀態
|
對象HashCode
|
對象分代年齡
|
0
|
01
|
鎖狀態
|
25bit
|
4bit
|
1bit
|
2bit
|
|
23bit
|
2bit
|
是不是偏向鎖
|
鎖標誌位
|
||
輕量級鎖
|
指向棧中鎖記錄的指針
|
00
|
|||
重量級鎖
|
指向互斥量(重量級鎖)的指針
|
10
|
|||
GC標記
|
空
|
11
|
|||
偏向鎖
|
線程ID
|
Epoch
|
對象分代年齡
|
1
|
01
|