1. 程式人生 > >java內存分配策略

java內存分配策略

ava java對象 啟動 策略 區分 裏的 java內存分配 程序 對象的內存分配

對象的內存分配,從大方向將就是在堆上分配,對象主要分配在新生代的Eden區上,如果啟動了本地線程分配緩存,將按線程優先在TLAB上分配。

1. 對象優先在Eden區分配:大多數情況下,對象在新生代Eden區中分配。

2. 大對象直接進入老年代:這裏的大對象是指需要大量連續內存空間的java對象,例如很長的字符串以及數組

3. 長期存活的對象將進入老年代:一定次數的Minor GC後仍然存活的對象,將進入老年代

4. 動態對象年齡判定:為了動態更好地適應不同程序的內存狀況,虛擬機並不是永遠地要求對象的年齡必須達到了MaxTenuringThershod才能晉升為老年代

5. 空間分配擔保

java內存分配策略