內存分佈與回收策略
解決兩個問題
自動給對象分配內存
基本上都是堆上分配
自動回收分配給對象的內存
對象優先在新生代的Eden分配
當沒有足夠內存時,虛擬機發起一次Minor GC
參數控制
-Xms20M, -Xmx20M, -Xmn10m限制Java堆20M,不可擴展10M新生代,10M老年代
-XX:SuvivorRatio=8新生代Eden區:一個Survior是 8:1
大對象直接進入老年代
典型大對象
很長的字符串
元素數量很龐大的數組
-XX:PrerenureSizeThreshold參數指定大於該設置值的對象直接在老年代分配
長期存活的對象將進入老年代
爲每個對象定義了一個對象年齡計數器