jvm
Abzz
生命啊,就该璀璨如花!
展开
-
Java虚拟机学习之GC算法
jvm主要的gc算法有:标记-清除(Mark-Sweep)、复制(Copying)、标记-整理(Mark-Compact)和分代收集(Generational Collection)1. 标记-清除(Mark-Sweep)算法原理介绍:首先标记处所有需要回收的对象,等待标记完成之后一次性将全部标记对象回收示意图:缺点:效率不高、空间问题(这个算法会产生很多不连续的内存碎片)2.复制(Copying)算法原理介绍:将内存分为大小相等的两块,每次只使用其中的一块。当这一块内存用完时.原创 2021-03-04 11:16:39 · 107 阅读 · 1 评论 -
Java虚拟机学习之对象在jvm内存中的布局
Java对象在jvm内存中的布局主要有三个部分:对象头(Header)、实例数据(Instance Data)和对齐填充(Padding)一、对象头(Header) 对象头(Header)包括两个部分。 第一部分存储自身运行时数据,如:哈希码(Hash Code)、GC分代年龄、锁状态标志、线程持有锁、偏向线程id、偏向时间戳等。这部分官方称为“Mark Word”。 另一部分是类型指针,即对象指向它的类元数据的指针。虚拟机通过这个来确定这个对象是哪个类的实例。二、实例数据(Ins...原创 2021-02-26 10:07:30 · 204 阅读 · 0 评论