KZKY memo

自分用メモ.

memory dumpのとり方

kill したとき1
$ java -XX:+PrintClassHistogram -XX:HeapDumpPath=/path/to/heap.dump Main
$ kill -QUIT java_pid

→ STDOUTにはでてきた.

kill したとき2
$ java -XX:+HeapDumpOnOutOfMemoryError XX:HeapDumpPath=/path/to/heap.dump Main 
$ kill -QUIT java_pid

→ STDOUTにはでてきた.

任意のタンミング1
$ java Main 
$ jmap -dump:format=b,file=/path/to/filename java_pid

/path/to/filenameにはダンプがあったが,

jvisualvmから読めなかった,
eclipse memroy analyzerからは読めた.

任意のタンミング2
$ jvisualvm
$ java main ...

jvisualvmが認識したPIDを右くりでheap dumpをクリック.

jmapで取得したダンプをjvisualvmで読ませるにはどうしたらよいのだろうか?