JVM专题之垃圾收集算法

admin2024-07-04  11

标记清除算法

第一步:标记

(找出内存中需要回收的对象,并且把它们标记出来)

第二步:清除

(清除掉被标记需要回收的对象,释放出对应的内存空间)

缺点: 标记清除之后会产生大量不连续的内存碎片,空间碎片太多可能会导致以后在程序运行过程中需 要分配较大对象时,无法找到足够的连续内存而不得不提前触发另一次垃圾收集动作。 (1)标记和清除两个过程都比较耗时,效率不高 (2)会产生大量不连续的内存碎片,空间碎片太多可能会导致以后在程序运行过程中需要分配较大 对象时,无法找到足够的连续内存而不得不提前触发另一次垃圾收集动作。

JVM专题之垃圾收集算法,第1张

JVM专题之垃圾收集算法,第2张

标记清除算法的衍生规则之分配(动态分区分配策
略)

首次适应算法(Fisrt-fit) 首次适应算法(Fisrt-fit)就是在遍历空闲链表的时候,一旦发现有大小等于需要的大 小之后,就立即把该块分配给对象,并立即返回。

最佳适应算法(Best-fit) 最佳适应算法(Best-fit)就是在遍历空闲链表的时候,返回刚好等于需要大小的块。

最差适应算法(Worst-fit) 最差适应算法(Worst-fit)就是在遍历空闲链表的时候,找出空闲链表中最大的分块, 将其分割给申请的对象,

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明原文出处。如若内容造成侵权/违法违规/事实不符,请联系SD编程学习网:675289112@qq.com进行投诉反馈,一经查实,立即删除!