JavaヒープとJVMが利用するCヒープがある。†
- スタックトレースがjavaで出ていればJavaヒープ
- いきなりクラッシュはCヒープ
OutOfMemoryError: Java heap space†
ヒープが少ない。起動時に出るなら単にメモリ不足。
徐々に増えてGCなども増えたのちにでるのであればメモリを食う処理がその時間帯にある。
徐々に増える場合はメモリリーク
OutOfMemoryError: PermGen space†
スレッド†
- 1スレッドあたり1MBのスタック領域がCヒープに確保される。これが300スレッドとなると300MBとなる