【JVM】JVM中的分代回收

文章目录

分代收集算法

什么是分代

在java8时,堆被分为了两份: 新生代和老年代【1:2】

其中:

对于新生代 ,内部又被分为了三个区域。
伊甸园区Eden,新生的对象都分配到这里
幸存者区survivor(分成from和to)

Eden区,from区,to区【8:1:1】

分代收集算法-工作机制

创建的对象,都会先分配到eden区

当伊甸园内存不足,标记伊甸园from(现阶段没有)的存活对象

将存活对象采用复制算法复制到 to 中,复制完毕后,伊甸园和 from 内存都得到释放

经过一段时间后伊甸园的内存又出现不足,标记eden区域to区存活的对象,将存活的对象复制到from区

当幸存区对象熬过几次回收(最多15次),晋升到老年代幸存区内存不足大对象会导致提前晋升

MinorGC、 Mixed GC 、 FullGC的区别是什么

Minor GC(新生代GC)、Mixed GC(混合GC)和Full GC(完全GC)是垃圾回收过程中的三个不同阶段。它们在触发条件执行范围影响范围上存在一些区别。

Minor GC主要针对新生代进行垃圾回收,
Mixed GC是对新生代和部分老年代的垃圾回收,
Full GC则是对整个堆内存进行垃圾回收。

随着垃圾回收的范围扩大停顿时间对应用程序影响也会增加。

相关推荐
思麟呀3 小时前
在C++基础上理解CSharp-7
java·jvm·c++·c#
头茬韭菜5 小时前
3.9 成本预警 — 退出钩子、$5 阈值对话框与多通道成本通知
java·大数据·jvm·ai
并不喜欢吃鱼6 小时前
从零开始 C++----- 十五.一文吃透 C++ 异常:try-catch、栈展开、自定义异常、异常安全 noexcept 底层全剖析
java·开发语言·jvm
haluhalu.8 小时前
prompts.chat:02-anatomy-of-effective-prompt
jvm·prompt
小猿备忘录1 天前
JVM 调优完全手册(Java 8 版)
java·开发语言·jvm
KobeSacre1 天前
CyclicBarrier 源码
java·jvm·算法
脚后跟法1 天前
.NET热门ORM真实的性能测试总结
jvm·php·.net
whaledown2 天前
互联网大厂Java求职面试三轮提问详解(涵盖Spring Boot、微服务、Kafka等核心技术)
java·jvm·数据库·spring boot·微服务·面试·kafka
hdsoft_huge2 天前
JDK系列19:JVM全维度调优实战,内存、元空间、线程栈、GC参数压测调优完整方案
java·开发语言·jvm
-西门吹雪3 天前
现代C++ 并发编程-学习指南
java·jvm·c++