1. 程式人生 > >大對象直接進入老年代

大對象直接進入老年代

就會 uri blog 閾值 log 年齡 直接 第一次 d參數

PretenureSizeThreshold參數只對Serial和ParNew兩款收集器有效,Parallel Scavenge收集器不認識這個參數,Parallel Scavenge 收集器一般並不需要設置,如果遇到必須使用這個參數的場合,可以考慮ParNew加CMS的收集器的組合。

虛擬機采用分代的手機思想來管理內存,name對象回收時就必須能識別哪些對象應放在新生代,哪些對象應該放在老年代,為了做到這點,虛擬機給每個對象定義了一個對象年齡計數器。如果對象在Eden出生並經過第一次Minor GC後仍然存活,並且能被Survivor容納的話,將被移動到Survivor區中,並且對象年齡設置為1,對象在Survivor區中沒“熬過”一次Minor GC,年齡就增加一歲,當他的年齡增加增加到一定程度(默認是15歲),就會被晉升到老年代。對象晉升老年代的閾值,可以通過參數-XX:Max-TenuringThreshold設置。

大對象直接進入老年代