欢迎光临散文网 会员登陆 & 注册

千锋教育2023版Java面试宝典Java面试200题(含美团、字节、阿里大厂真

2023-07-19 12:18 作者:小黑喜欢美女  | 我要投稿

28.Full GC、Major GC和MinorGC有什么不同

我们见过很多 GC 名词如:Minor GC、Young GC、Full GC、Old GC、Major GC、Mixed GC等。那么这么多GC如何进行大致区分?

针对HotSpotVM的实现,它里面的GC其实准确分类有两种:

1.Partial GC(局部GC):并不收集整个GC堆的模式

·Young GC:只收集YoungGen的GC,Young GC 还有种说法就叫做MinorGC,两者是一个意思;

·Old GC:只收集 old gen的GC,只有垃圾收集器CMS的concurrent collection是这个模式;

●Mixed GC: 收集整个Young Gen以及部分oldgen的GC,只有垃圾收集器G1有这个模式;

1.FullGC(全局GC):收集整个堆,包括新生代,老年代,永久代(在JDK1.8 及以后,永

久代被移除,换为 metaspace元空间)等所有部分的模式;

接下来让我们再来了解下各个GC:

(1)Minor GC/Young GC

首先我们先来看下MinorGC/YoungGC,大家都知道,新生代(YoungGen)也可以称之为年轻代,这两个名词是等价的。那么在年轻代中的 Eden 内存区域被占满之后,实际上就需要触发年轻代的GC,或者是新生代的GC。

其实就是所谓的Minor GC,也可以称之为Young GC。

(2)Old GC

所谓的老年代GC,称之为OldGC更加合适一些,因为从字面意义上就可以理解,这就是所谓的老年代GC

千锋教育2023版Java面试宝典Java面试200题(含美团、字节、阿里大厂真的评论 (共 条)

分享到微博请遵守国家法律