2023/08/13_______JVM(CG)垃圾回收 算法(复制算法,标记清除,标记清除压缩)

这篇具有很好参考价值的文章主要介绍了2023/08/13_______JVM(CG)垃圾回收 算法(复制算法,标记清除,标记清除压缩)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

JVM GC算法

复制算法

1,每一次GC都会将伊甸(Eden)活的对象移到幸存区中:一旦Eden区被GC后 就会是空

只要有内容就是from区
谁空谁是to区
内存会从 伊甸->幸存区to->幸存from(这个时候to和from交换区域)

2023/08/13_______JVM(CG)垃圾回收 算法(复制算法,标记清除,标记清除压缩),jvm,算法

2023/08/13_______JVM(CG)垃圾回收 算法(复制算法,标记清除,标记清除压缩),jvm,算法

每一次GC(垃圾回收)以后伊甸园空幸存区to都是空的

好处:没有内存碎片
坏处:浪费一半空间(幸存to区)
复制算法最佳使用场景,对象存活度较低的时候

标记清除算法

2023/08/13_______JVM(CG)垃圾回收 算法(复制算法,标记清除,标记清除压缩),jvm,算法

优点:不需要额外的内存空间
缺点:两次扫描浪费时间,会产生内存碎片

标记清除压缩算法

2023/08/13_______JVM(CG)垃圾回收 算法(复制算法,标记清除,标记清除压缩),jvm,算法

内存效率:复制算法>标记清除算法>标记压缩算法(时间复杂度问题)
内存整齐度:复制算法=标记压缩算法>标记清除算法
内存利用率:标记压缩算法=标记清除算法>复制算法

年轻代:

  • 存活率低

  • 复制算法
    老年代:

  • 区域大:存活录

  • 标记清除(内存碎片不是太多)+标记压缩混合实现文章来源地址https://www.toymoban.com/news/detail-646368.html

到了这里,关于2023/08/13_______JVM(CG)垃圾回收 算法(复制算法,标记清除,标记清除压缩)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

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

领支付宝红包 赞助服务器费用

相关文章

  • 【JVM】13. 垃圾回收器

    2023年05月29日
    浏览(39)
  • JVM——垃圾回收(垃圾回收算法+分代垃圾回收+垃圾回收器)

    只要一个对象被其他对象所引用,就要让该对象的技术加1,某个对象不再引用其,则让它计数减1。当计数变为0时就可以作为垃圾被回收。 有一个弊端叫做循环引用,两个的引用计数都是1,导致不能作为垃圾回收,会造成内存泄露。 java虚拟机没有采用该算法。 该算法需要

    2024年02月12日
    浏览(50)
  • JVM垃圾清除算法

    前言:大家好,我是小威,24届毕业生,在一家满意的公司实习。本篇将记录几次面试中经常被问到的知识点以及对学习的知识点总结和面试题的复盘。 本篇文章记录的基础知识,适合在学Java的小白,也适合复习中,面试中的大佬 🤩🤩。 如果文章有什么需要改进的地方还

    2024年01月20日
    浏览(50)
  • 【JVM】11. 垃圾回收及回收算法算法

    2023年05月29日
    浏览(69)
  • 【JVM】JVM 垃圾回收算法

    目前JVM中有三种常见的垃圾回收算法,分别是:标记清除、标记整理和复制,这三种垃圾回收算法各有优缺点,下面逐一介绍。 在读本篇文章中,如果对JVM中哪个是垃圾,哪个不是垃圾,JVM到底是怎么知道的,请先读下面这篇文章 【JVM】JVM 判断对象存活算法(引用计数算法

    2024年02月09日
    浏览(53)
  • 垃圾回收 - 复制算法

    GC复制算法是Marvin L.Minsky在1963年研究出来的算法。说简单点,就是只把某个空间的活动对象复制到其它空间,把原空间里的所有对象都回收掉。这是一个大胆的想法。在此,我们将复制活动对象的原空间称为From空间,将粘贴活动对象的新空间称为To空间。 GC复制算法是利用

    2024年02月09日
    浏览(31)
  • JVM基础(5)——JVM垃圾回收算法

    作者简介:大家好,我是smart哥,前中兴通讯、美团架构师,现某互联网公司CTO 联系qq:184480602,加我进群,大家一起学习,一起进步,一起对抗互联网寒冬 学习必须往深处挖,挖的越深,基础越扎实! 阶段1、深入多线程 阶段2、深入多线程设计模式 阶段3、深入juc源码解析

    2024年02月02日
    浏览(47)
  • 【JVM】垃圾回收算法

    标记-清除算法将垃圾回收分为两个阶段,标记阶段和清除阶段 在标记阶段首先通过GC Roots,标记所有从根节点开始的对象,未被标记的对象就是未引用的垃圾对象。然后,在清除阶段,清除未被标记的对象。 适合场景: 1、存活对象较多的情况下比较高效 2、使用于老年代

    2024年01月16日
    浏览(41)
  • JVM---垃圾回收算法介绍

    目录 分代收集理论 三种垃圾回收算法 标记-清除算法(最基础的、基本不用) 标记-复制算法 标记-整理算法 正式因为jvm有了垃圾回收机制,作为java开发者不会去特备关注内存,不像C和C++。 优点 :开发门槛低、安全 缺点 :性能问题。c和c++可以自己操控内存等,性能更高

    2024年02月12日
    浏览(35)
  • jvm垃圾回收相关的算法

    JVM主要通过以下几种方式来判断对象是否需要回收: 引用计数法:JVM通过引用计数器来判断对象的引用数量,当引用数量为0时,表示对象可以被回收。 可达性分析算法:JVM通过根对象(如栈中的引用、静态变量等)出发,对对象进行可达性分析,判断对象是否可被访问到,

    2024年02月02日
    浏览(60)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包