java内存分析_java内存分析总结
1、自帶的jconsole工具。
(1)如果是從命令行啟動,使 JDK 在 PATH 上,運行 jconsole 即可。
(2)如果從 GUI shell 啟動,找到 JDK 安裝路徑,打開 bin 文件夾,雙擊 jconsole 。
(3)當分析工具彈出時(取決于正在運行的 Java 版本以及正在運行的 Java 程序數量),可能會出現一個對話框,要求輸入一個進程的 URL 來連接,
也可能列出許多不同???? 的本地 Java 進程(有時包含 JConsole 進程本身)來連接。
2、自帶的jmap工具
jmap 是一個可以輸出所有內存中對象的工具,甚至可以將VM 中的heap,以二進制輸出成文本。使用方法 jmap -histo pid。如果連用 SHELL jmap -histo pid>a.log可以將其保存到文本中去(windows下也可以使用),在一段時間后,使用文本對比工具,可以對比出GC回收了哪些對象。
(1)windows環境DOS查詢端口和PID號:TaskList/svc
(2)用netstat -ano命令,列出所有端口對應的PID
3、mat
a、產生dump文件
一個進程對應一個.hprof文件,
(1)設置jvm的參數:-XX:+HeapDumpOnOutOfMemoryError生成的java_pid7888.hprof文件位于當前工程目錄下;
(2)通過jmap -dump:format=b,file=HeapDump.bin
(3)通過jconsole生成
選擇Mbean -> com.sun.management -> HotSpotDiagnos -> Operations -> dumpHeap
在參數p0中填寫保存dmp文件的路徑,例如f:/my.hprof,文件的后綴名要為hprof。
點擊dumpHeap按鈕生成dump文件。
b、安裝mat打開.hprof文件進行分析
原文:http://blog.csdn.net/zcc_0015/article/details/38454651
總結
以上是生活随笔為你收集整理的java内存分析_java内存分析总结的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: mysql c contor_Pytho
- 下一篇: java是什么格式_是java格式