关于gc:GC频繁抖动的主要原因

15次阅读

共计 269 个字符,预计需要花费 1 分钟才能阅读完成。

内存抖动

内存抖动是因为大量的对象被创立又在短时间内马上被开释,如循环中调配对象,很容易引起 GC,特地是在较大的循环次数或者一个循环中调配较多的长期对象时。

霎时产生大量的对象

霎时产生大量的对象,即便对象不大,也可能使得堆的可用空间达到阈值登程 GC 或导致堆的扩容产生 GC。

调配大内存块的对象

调配大内存块的对象,如图片,大的 byte 数组等,尽管堆残余内存空间足够,然而依然可能登程 GC,因为内存碎片导致了找不到间断空间来调配这大内存,从而登程 GC。

内存泄露

内存泄露,会导致可用内存越来越少,而且导致碎片也可能越来越重大,这样就更加容易登程 GC。

正文完
 0