JVM GC基本算法(趣味解读)

本文以趣味方式解读JVM的垃圾回收(GC)算法,包括引用计数、标记-清除、复制、标记-整理、增量收集和分代收集。每种算法都有其优缺点,如引用计数难以处理循环引用,复制算法能有效减少内存碎片但需额外空间,分代收集针对不同生命周期的对象采取不同策略。同时,文章提到了不同类型的GC(scavenge和Full)和GC回收器(串行、并行、并发)。
摘要由CSDN通过智能技术生成

个人解读,有问题处万望指点!!

1.引用计数: 新增一个引用,即新增一个计数。

         缺陷: 循环处理是个大问题

2.标记-清除:第一阶段先标记对象,第二阶段清除未标记的对象

         缺陷:太菜了,被打野的抓,送人头(产生了内存碎片)

3.复制: 类似元歌技能,复制一块区域,在回收时,将运行的区域复制给另一个区域

        缺陷:需要double内存

        优势:减少血量消耗,二次生命(节省成本,还能整理空间)         

4.标记-整理:貂蝉与元歌的结合体,先开辟区域,然后貂蝉进行爆发输出

        优势:不需要元歌那么大的空间,又避免貂蝉太过脆皮,而造成多余的内存碎片

5.增量收集: 类似植物大战僵尸中的向日葵,这时,向日葵正在努力的释放阳光,却被二傻子无情的铲掉 ,

               在应用正在运行的时候,垃圾回收就开始回收了

6.分代: 年轻代、年老代、持久代。

              类似古董,越年久的越能卖出好价格,或者根本不会卖出,只会收藏。

               那么垃圾回收的时候,也会根据不同周期的对象,来运行不同的算法进行处理。

GC类型:
scavenge GC和 Full GC

GC回收器:

串行收集器、并行收集器、并发收集器

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值