我可以成功生成堆快照并将其保存为二进制文件。现在,问题是我不知道二进制堆文件的结构/格式,我无法从程序中读取它。我知道,我可以使用 jHat 做到这一点。但我想通过代码来做到这一点。
在这方面有什么指示吗?
提前致谢..
jhat 源在 openjdk 中的 openjdk\jdk\src\share\classes\com\sun\tools\hat\ 中可用
http://openjdk.java.net/groups/serviceability/index.html#tools
您需要下载 OpenJDK 源代码树。该存储库将为您提供一切,但我发现很难导航。我认为在JDK 源代码压缩包中找到该目录会更容易(但还没有查看;它可能不存在)。
Eclipse Memory Analyzer(MAT)源码应该对你有很大帮助