YongGC、MinorGC、 Major GC、FullGC

(1)Minor GC / YongGC
​ 这两个名词都是指的新生代或年轻代,从字面意思也能理解。那么新生代GC,我们就可以说是YongGC或MinorGC,两者都可以。从年轻代空间(eden和survivor区)回收的内存区域,在这个区的对象生命周期短,GC频率搞,回收速度快,一般采用复制回收算法。

(2)老年代GC,Old GC?
​ 之前我们说老年代GC 一直都说用的Full GC,没有提过 Old GC ,当然如果要说单独说老年代GC ,那么用Old GC是比较合适的。后续我们提到老年代GC 也都用 Old GC来。(当然如果用Full GC其实也没有问题,一般来讲触发到Old GC都会要么前要么后顺带一次Minor GC,所以我们一般也就直接称为Full GC)

(3)Full GC
​ 首先Full GC是指的针对 新生代、老年代、永久代的全体内存空间的垃圾回收,所以叫做 Full GC。
FullGC一般耗时长。因此,我们要尽量避免发生FullGC。

FullGC触发的情形:

手动调用System.gc()方法时(慎用)
Minor GC后,如果大量对象仍然存活,导致两块survivor区域空间不足,就会转移到老年代,如果老年代空间也不够用了就会触发Full GC
老年代最大连续可用空间<历代老年代对象的平均大小
达到了收集器设置的阈值,比如CMS老年代 触发FullGC的使用比例是92%
当元空间(java8)/永久代(java7)不足时

(4)Major GC
​ 很多书籍或博客里有些说 Major GC == Old GC, 也有说 == Full GC,这个词目前用的很混淆,所以个人建议尽量不提这个词,如果真有面试中面试官说到这个词,那么可以向他明确一下是指的年老代回收还是整堆回收。

(5)Mixed GC
​ Mixed GC是G1中特有的概念,当老年代内存占据到了45%就户触发Mixed GC,对新生代和老年代都进行回收。

参考图

https://it.cha138.com/shida/show-86368.html

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值