JVM分代回收

JVM分代回收

堆中分为两份:新生代和老年代(1:2)

新生代

新生代的内部分为了三个区域

Eden区,From区,To区[8:1:1]

当eden区内存不足时,就会使用可达性分析算法进行标记

标记eden区和from区的存活对象

将这些对象复制到to区,对eden区和from区进行清除

如果eden下次又出现内存不足

就将这些对象复制到from区,对eden区和to区进行清除

新生代->老年代

当一个对象在15次GC中都存活下来,就会晋升到老年代

MinorGC

发生在新生代的垃圾回收,暂停时间短

暂停时间:暂停所有应用程序线程,等待垃圾回收完成

MixedGC

新生代 + 老年代部分区域的垃圾回收

FullGC

新生代 + 老年代完整的垃圾回收,暂停时间长,尽量避免

相关推荐
safestar20127 小时前
Elasticsearch ILM实战:从数据热恋到冷静归档的自动化管理
java·开发语言·jvm·elasticsearch·es
北郭guo8 小时前
垃圾回收底层原理【深入了解】
java·jvm·算法
7***47719 小时前
【SQL】掌握SQL查询技巧:数据分组与排序
java·jvm·sql
一只小透明啊啊啊啊10 小时前
JVM内存
jvm
嘟嘟w10 小时前
JVM的内存结构
java·jvm
平原人11 小时前
JVM字节码attribute_info
jvm·javap·class字节码·attribute_info
她说..12 小时前
Spring AOP 操作日志框架(CV可用)
java·jvm·spring·springboot·springcloud
p***s9112 小时前
java进阶1——JVM
java·开发语言·jvm
李景琰12 小时前
JDK25 Scoped Values:为虚拟线程时代重构的线程上下文共享方案
java·jvm·重构
如意.75913 小时前
【C++】C++11智能指针的使用及其原理
jvm