前言
点赞在看,养成习惯。
点赞收藏,人生辉煌。
点击关注【微信搜索公众号:编程背锅侠】,第一时间获得最新文章。
1、Minor GC和Young GC
Minor GC 和 Young GC,“新生代”也可以称之为“年轻代”, 这两个名词是等价的。那么在年轻代中的Eden内存区域被占满之后,实际上就需要触发年轻代的gc,或者是新生代的 gc。
此时这个新生代gc,其实就是所谓的“Minor GC”,也可以称之为“Young GC”,这两个名词,就专门针对新生代的gc。
2、Old GC
老年代gc,称之为“Old GC”。
3、Full GC
对于Full GC指的是针对新生代、老年代、永久代的全体内存空间的 垃圾回收,所以称之为Full GC。
从字面意思上也可以理解,“Full”就是整体的意思,所以就是对JVM进行一次整体的垃圾回收,把各个内存区域的垃圾都回收掉。
换句话说,Full GC就是针对JVM内所有内存区域的一次整体垃圾回收。
4、Major GC
Major GC,这个其实一般用的比较少,是一个非常容易混淆的概念词。
有些人把Major GC跟Old GC等价起来,认为他就是针对老年代的GC,也有人把Major GC和Full GC等价起来,认为他是针对JVM全体内存区域的GC。
所以针对这个容易混淆的概念,建议大家以后少提。
如果听到有人说这个Major GC的概念,大家可以问清楚,他到底 是想说Old GC呢?还是Full GC呢?
5、Mixed GC
Mixed GC是G1中特有的概念,其实说白了,主要就是说在G1中,一旦老年代占据堆内存的45%了,就要触发Mixed GC,此时对年轻代和老年代都会进行回收。
对应的参数设置:“-XX:InitiatingHeapOccupancyPercent”,他的默认值是45%,可以进行按需要修改。
谢谢点赞
- 创作不易, 非常欢迎大家的点赞、评论和关注(^_−)☆
- 你的点赞、评论以及关注是对我最大的支持和鼓励
- 是我继续创作高质量博客的动力 !!!