次のグラフは、メモリを使用していて、ガベージコレクションされていないことを示していますか?
使用するヒープが少なくなると、オレンジ色のグラフ(割り当てられたヒープ)が下がると予想していました。
- これは無効な仮定ですか?
- 割り当てられると、プログラムが閉じるまでヒープは縮小しませんか?
グラフから、JVMがヒープを縮小できることが明らかです。これは、午後3時10分直前にオレンジ色の線がわずかに下がっているところからわかります。
ただし、後でJVMはヒープを縮小しないことを選択します。これはほぼ確実に、ヒープの大部分が未使用であるためです。動作はとによって制御され-XX:MinHeapFreeRatio
ます-XX:MaxHeapFreeRatio
。
議論については、http://stopcoding.wordpress.com/2010/04/12/more-on-the-incredible-shrinking-jvm-heap/を参照してください。