java堆栈分析

java堆栈分析一 线程堆栈查看 jstackpidjst gt gt home user local 1 txt 导出到文件通过该工具可以查看图形界面 IBMThreadand TMDA 导入之后 点击从左边数第 11 个小图标 生成这样式的图 具体分析哪些线程等待 阻塞 二 jviusalvm 分析堆转储文件 jmap dump live file mydump hprof41927 运行此命令后

一、线程堆栈查看

jstack pid

jstack pid >> /home/user/local/1.txt 导出到文件

通过该工具可以查看图形界面

IBM Thread and Monitor Dump Analyzer for Java (TMDA)

java堆栈分析

导入之后,点击从左边数第11个小图标,生成这样式的图。

具体分析哪些线程等待、阻塞。

二、jviusalvm分析堆转储文件

jmap -dump:live,file=mydump.hprof 41927

运行此命令后,将创建扩展名为 hprof 的堆转储文件。

选项 –dump:live 用于仅收集在运行代码中仍有引用的活动对象。使用 live 选项时,会触发完整的 GC 以清除无法访问的对象,然后仅转储有引用的活动对象。

IDE 使用 VM 选项 HeapDumpOnOutOfMemoryError 运行程序以生成堆转储文件:

  1. -XX:+HeapDumpOnOutOfMemoryError
  2. -XX:HeapDumpPath=hdump.hprof

导入生成的快照即可。

jviusalvm也可进行实时分析。

三、Eclipse Memory Analyzer (MAT) 分析 Java 堆转储 

引用文章地址

创建和分析 Java 堆转储(Heap Dumps)_守夜人爱吃兔子的博客-CSDN博客_分析堆转储文件

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/217777.html原文链接:https://javaforall.net

(0)
上一篇 2026年3月18日 上午8:47
下一篇 2026年3月18日 上午8:48


相关推荐

  • 常见十四种的Java算法

    常见十四种的Java算法一 简单列出常见的 Java 中 14 种算法序号 简称 英文名称 简介 1 二分查找 BinarySearch 二分查找要求线性表必须采用顺序存储结构 而且表中元素按关键字有序排列 2 冒泡排序 BubbleSort 3 插入排序 4 快速排序 5 希尔排序 6 归并排序 7 桶排序 8 基数排序

    2026年3月26日
    2
  • Mutex的lock(), tryLock()区别[通俗易懂]

    Mutex的lock(), tryLock()区别[通俗易懂]lock函数和tryLock函数都是用于锁定对象,但他们之间有一定的区别:lock函数是阻塞的,因为它调用WaitForSingleObject函数时传递的第二个参数是INFINITE,表示无限等待下去,所以是阻塞的。tryLock函数时非阻塞的,调用后立即返回。因为它调用WaitForSingleObject函数时传递的第二个参数是0,表示不等待,立即返回。调用lock或者tryLoc

    2022年10月16日
    3
  • IDEA 端口被占用 解决办法

    IDEA 端口被占用 解决办法解决方法 开始 gt 运行 gt cmd window R 组合键 调出命令窗口 输入命令 netstat aon findstr8080 被占用的端口 可以看出占用端口的是 PID 为 3108 的进程 直接结束该进程 taskkill f t im3108

    2026年3月19日
    2
  • pandas处理缺失值的函数_pandas填充缺失值

    pandas处理缺失值的函数_pandas填充缺失值df.dropna()函数用于删除dataframe数据中的缺失数据,即删除NaN数据.官方函数说明:DataFrame.dropna(axis=0,how=’any’,thresh=None,subset=None,inplace=False) Removemissingvalues. SeetheUserGuideformoreonwhichvaluesareconsideredmissing, andhowtoworkwithmissing

    2025年12月16日
    6
  • Git中使用.gitignore忽略文件的推送

    Git中使用.gitignore忽略文件的推送1 简介在使用 Git 管理自己的代码版本时 由于编译生成的中间文件 Git 使用 SHA 1 算法来对文件进行加密 进而得出来一个 40 位的十六进制加密字符串 d8b1f67b5ddd 但这种算法对于文本文件有效 对于二进制之类的文件则无法正常的进行加密 因此 Git 版本管理多管理文本文件 而非二进制之类的文件 例如 obj 文件 class 文件

    2026年3月18日
    2
  • 02.pycharm中配置PyInstaller打包工具

    02.pycharm中配置PyInstaller打包工具我用的环境版本python解释器:3.6.6pycharm开发工具:2018.3.6社区版PyInstaller打包工具:4.5.1pycharm中配置PyInstaller打包工具opts可选的参数参数含义-F-onefile,打包成一个exe文件-D-onefile,创建一个目录,包含exe文件,但会依赖很多文件(默认选项)-c-console,-nowindowed,使用控制台,无窗口(默认)-w-Windowed,-noconsole,使用窗

    2025年7月7日
    6

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号