社区
Java
帖子详情
GC-标记-整理算法的疑问?
土豆是我的最爱
2020-06-16 05:38:20
定义:“标记-整理”(Mark-Compact)算法,标记过程仍然与“标记-清除”算法一样,但后续步骤不是直接对可回收对象进行清理,而是让所有存活的对象都向一端移动,然后直接清理掉端边界以外的内存。
示意图:
上面两个图都是百度出来相关文章里的图,
让所有存活的对象都向一端移动,然后清理掉边界以外的内存,我想问一下这句话怎么理解。
存活对象向一端移动时总不能穿过要回收的对象吧?为什么移动后清理会这么整齐呢?
...全文
293
2
打赏
收藏
GC-标记-整理算法的疑问?
定义:“标记-整理”(Mark-Compact)算法,标记过程仍然与“标记-清除”算法一样,但后续步骤不是直接对可回收对象进行清理,而是让所有存活的对象都向一端移动,然后直接清理掉端边界以外的内存。 示意图: 上面两个图都是百度出来相关文章里的图, 让所有存活的对象都向一端移动,然后清理掉边界以外的内存,我想问一下这句话怎么理解。 存活对象向一端移动时总不能穿过要回收的对象吧?为什么移动后清理会这么整齐呢?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
2 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
土豆是我的最爱
2020-06-17
打赏
举报
回复
好吧,钻了牛角尖了,如果定义按楼上理解是可以的。 存活对象向一端移动,可回收对象向另一端移动。 这里的一端不是四个边界,而是四个边角。
qybao
2020-06-16
打赏
举报
回复
这不是挺好理解的吗?你就把它想象成排序就好了,存活对象往前排,可回收对象和未使用往后排,然后最后一个存活对象以后的内存一起清理掉
gc
算法
(
标记
清除,复制,
标记
整理
)
本文记录了对
GC
算法
的理解,介绍了
标记
清除、复制和
标记
整理
三种
算法
。
标记
清除会产生内存碎片;复制
算法
可避免碎片但浪费一半内存;
标记
整理
能避免前两者的问题,但效率较低。还提到分代收集
算法
,年轻代用复制
算法
,老年代用
标记
整理
或
标记
清除更合适。
GC
算法
(
标记
清除、复制、
标记
整理
、 分代收集) 、 新生代 老年代
本文详细介绍了几种常见的垃圾回收
算法
,包括
标记
-清除
算法
、复制
算法
、
标记
-
整理
算法
及分代收集
算法
。针对不同场景,阐述了每种
算法
的工作原理、优缺点及其适用范围。
Java
GC
标记
-
整理
算法
详解:原理、实现与应用
本文深入解析Java垃圾回收机制中的
标记
-
整理
算法
,介绍其核心原理、实现步骤、优缺点及优化变种。该
算法
结合
标记
-清除和复制
算法
优点,解决内存碎片问题,适合老年代对象回收。还给出代码示例,并阐述其在不同场景的应用及JVM中的实现。
垃圾回收
算法
(
GC
Algorithm)基石:
标记
-清除、复制、
标记
-
整理
本文深入剖析
标记
-清除、复制和
标记
-
整理
三种基础垃圾回收
算法
的实现机制与性能特点,探讨其在吞吐量、暂停时间和内存效率之间的权衡,结合JVM分代回收策略,阐明现代
GC
器的设计根基及未来发展方向。
GC
的三种收集方法:
标记
清除、
标记
整理
、复制
算法
的原理与特点,分别用在什么地方,优化收集方法的思路
本文详细介绍了JVM中的三种主要垃圾回收
算法
:
标记
清除、
标记
整理
和复制
算法
,并探讨了它们的特点及适用场景。此外,还介绍了如何根据不同区域的特点选择最合适的垃圾回收
算法
。
Java
51,408
社区成员
86,093
社区内容
发帖
与我相关
我的任务
Java
Java相关技术讨论
复制链接
扫一扫
分享
社区描述
Java相关技术讨论
java
spring boot
spring cloud
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章