触发GC运行的条件要分新生代和老年代的情况来进行讨论,有以下几点会触发GC:
>>当Eden区和From Survivor区满时;
>>调用System.gc时,系统建议执行Full GC,但是不必然执行
>>老年代空间不足
>>方法区空间不足
>>通过Minor GC后进入老年代的平均大小大于老年代的可用内存
>>由Eden区、From Space区向To Space区复制时,对象大小大于To Space可用内存,则把该对象转存到老年代,且老年代的可用内存小于该对象大小
触发GC运行的条件要分新生代和老年代的情况来进行讨论,有以下几点会触发GC:
>>当Eden区和From Survivor区满时;
>>调用System.gc时,系统建议执行Full GC,但是不必然执行
>>老年代空间不足
>>方法区空间不足
>>通过Minor GC后进入老年代的平均大小大于老年代的可用内存
>>由Eden区、From Space区向To Space区复制时,对象大小大于To Space可用内存,则把该对象转存到老年代,且老年代的可用内存小于该对象大小
本文标题:什么时候会触发垃圾回收?
本文链接:https://www.haomeiwen.com/subject/curnpftx.html
网友评论