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

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

相关推荐
看到我,请让我去学习2 小时前
C++核心编程—(面向对象,引用,函数提高,内存分区模型)
jvm
2301_794333913 小时前
Maven 概述、安装、配置、仓库、私服详解
java·开发语言·jvm·开源·maven
黄雪超5 小时前
JVM——对象模型:JVM对象的内部机制和存在方式是怎样的?
java·开发语言·jvm
用户7468160182618 小时前
java项目假死问题排查
jvm
子豪-中国机器人9 小时前
C++ 信息学奥赛总复习题
java·jvm·算法
yt9483210 小时前
JVM如何优化
jvm
wodownload211 小时前
CS003-2-2-perfermance
java·开发语言·jvm
重庆小透明11 小时前
【从零学习JVM|第三篇】类的生命周期(高频面试题)
java·jvm·后端·学习
张哈大19 小时前
【 java 虚拟机知识 第一篇 】
java·开发语言·jvm·笔记·缓存
小安同学iter20 小时前
JUC并发编程(二)Monitor/自旋/轻量级/锁膨胀/wait/notify/锁消除
jvm·线程安全·juc并发