【问题标题】:jmap supports ascii format for heap dump and binary dump formatjmap 支持 ascii 格式的堆转储和二进制转储格式
【发布时间】:2011-07-04 05:33:43
【问题描述】:

我使用 jmap 转储堆内存

jmap -dump:format=b,file=test.hprof 22035

据我所知,堆转储 ascii 格式存在。但执行下面的命令

jmap -dump:format=a,file=test.hprof 22035

jmap 使用打印。

ASCII 格式不存在?

而且我想了解堆转储二进制格式文档。 谷歌搜索..没有答案,没有文档。

这是二进制格式文件的摘要。

【问题讨论】:

    标签: java heap-dump


    【解决方案1】:

    没有文本格式,只有:

    -dump:<dump-options> to dump java heap in hprof binary format
                         format=b     binary format
    

    这是有道理的,以文本格式转储 JVM 内存会占用大量 GiB...此文件可以被堆转储分析器读取,例如 Eclipse mat 或 JProfiler。

    另见

    【讨论】:

      【解决方案2】:

      只需将二进制输出通过less(具有显示控制字符的各种选项)或xxd(默认情况下执行十六进制转储和ASCII转储)之类的过滤器进行管道传输。

      不可能有真正的 ASCII 格式,因为这是二进制数据; ASCII 不包含任何设置了第 7 位的字节,这会遗漏很多重要信息。

      这里有一些文档:http://java.sun.com/developer/technicalArticles/Programming/perfanal/java.hprof.txt

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2014-01-15
        • 2016-08-31
        • 2020-06-14
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多