对象内存布局
2022-6-16 Mr Chang JUC
整体结构包括三部分:
-
对象头部 ———— 只有一个对象头的实例对象 只有16字节
对象标记 _mark 字段是mark word
类型指针 _metadata 字段是 klass pointer
对象头(object header)即是由这两个字段组成
这些术语可以参考Hotspot术语表
-
实例数据
-
对齐填充
尾巴参数说明————压缩指针相关说明命令
-
java -XX: +PrintCommandLineFlags -version
-
默认开启压缩指针,-XX: +UseCompressedClassPointers
12 + 4 (对齐填充) = 一个对象16字节
-
手动配置,关闭了压缩指针 -XX: -UseCompressedClassPointers,
8+8 = 一个对象16字节
发表评论: