JVM的垃圾回收算法有哪些

标记清除算法

标记清除算法,是将垃圾回收分为2个阶段,分别是标记和清除

  1. 根据可达性分析算法得出的垃圾进行标记
  2. 对这些标记为可回收的内容进行垃圾回收
  • 优点:标记和清除速度较快
  • 缺点:碎片化较为严重,内存不连贯的

标记整理算法

优缺点同标记清除算法,解决了标记清除算法的碎片化的问题,同时,标记压缩算法多了一步,对象移动内存位置的步骤,其效率也有有一定的影响。老年代的垃圾回收器一般使用标记整理算法

复制算法

标记算法是将内存分成两块相等的区域,把标记的对象清除后,就会把存活的对象整理复制到另一块内存,一般年轻代的垃圾回收会采用复制算法

  • 优点
  1. 在垃圾对象多的情况下,效率较高
  2. 清理后,内存无碎片
  • 缺点

分配的2块内存空间,在同一个时刻,只能使用一半,内存使用率较低

相关推荐
WolfGang00732113 分钟前
代码随想录算法训练营Day27 | 56.合并区间、738.单调递增的数字、968.监控二叉树
算法
嘟嘟w31 分钟前
JVM(Java 虚拟机):核心原理、内存模型与调优实践
java·开发语言·jvm
信奥卷王44 分钟前
2025年9月GESPC++三级真题解析(含视频)
开发语言·c++·算法
努力学习的小廉1 小时前
我爱学算法之—— BFS之FLoodFill算法
算法·宽度优先
天选之女wow1 小时前
【Hard——Day8】65.有效数字、68.文本左右对齐、76.最小覆盖子串
linux·运维·redis·算法·leetcode
AI大模型学徒1 小时前
NLP基础(八)_马尔可夫模型
算法·机器学习·自然语言处理·nlp·概率论·马尔可夫模型
前端小L2 小时前
图论专题(十八):“逆向”拓扑排序——寻找图中的「最终安全状态」
数据结构·算法·安全·深度优先·图论·宽度优先
前端小L2 小时前
图论专题(十七):从“判定”到“构造”——生成一份完美的「课程表 II」
算法·矩阵·深度优先·图论·宽度优先
qq_433554542 小时前
C++ 稀疏表
开发语言·c++·算法
G皮T2 小时前
【Java】Java 运行时数据区域(一):名词概念
java·jvm·runtime·运行时·运行时数据区域