java线程堆栈分析工具jca457.jar;堆内存分析工具Memory Analyzer

版权声明:本文为博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/miniyuyu/article/details/80261100

(1)java线程堆栈分析工具jca457.jar

    主要用于分析死锁情况,线程调用使用情况,方法使用频率等。
    使用方法:
    jps找到Java线程pid号
    jstack pid    > filename              

    java -jar jca457.jar filename
    生成表格形式数据,方便分析。


(2)Memory Analyzer  http://www.eclipse.org/mat/downloads.php官网下载对应的版本
   官网说:It is useful if you do not want to installa full-fledged IDE on the system you are running the heap analysis.用于java虚拟机的堆内存的分析。
主要功能:查看堆内存的分配状况;跟踪内存分配情况。
有助于我们找到较大的对象,及代码中耗内存和内存泄漏的地方,是分析优化代码内存使用有力工具。
使用方法:
jps找到Java线程pid号
jmap -dump:format=b,file=filename.bin pid

Memory Analyze打开filename.bin文件就可以查看内存中各种数据,还有图表显示,很直观。


PS:记得上次的死锁,https://blog.csdn.net/miniyuyu/article/details/79661938 。当时定位了好长时间,事后用这两个工具分析当时的线程堆栈文件和dump文件,第一行就是大大的死锁警告,产生死锁的是调用前5名的两个方法。要是当时用了这两个工具,分分中搞定,论使用工具的重要性!

展开阅读全文

没有更多推荐了,返回首页