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

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

相关推荐
多米Domi0111 小时前
0x3f 第49天 面向实习的八股背诵第六天 过了一遍JVM的知识点,看了相关视频讲解JVM内存,垃圾清理,买了plus,稍微看了点确定一下方向
jvm·数据结构·python·算法·leetcode
饺子大魔王的男人1 小时前
Remote JVM Debug+cpolar 让 Java 远程调试超丝滑
java·开发语言·jvm
乡野码圣11 小时前
【RK3588 Android12】RCU机制
java·jvm·数据库
m0_5613596712 小时前
掌握Python魔法方法(Magic Methods)
jvm·数据库·python
2401_8384725113 小时前
使用Python进行图像识别:CNN卷积神经网络实战
jvm·数据库·python
zhihuaba13 小时前
使用PyTorch构建你的第一个神经网络
jvm·数据库·python
u01092727113 小时前
Python Web爬虫入门:使用Requests和BeautifulSoup
jvm·数据库·python
91刘仁德14 小时前
c++类和对象(下)
c语言·jvm·c++·经验分享·笔记·算法
爱学习的阿磊15 小时前
Python上下文管理器(with语句)的原理与实践
jvm·数据库·python
m0_7369191015 小时前
Python面向对象编程(OOP)终极指南
jvm·数据库·python