什么Java内存分析器应用程序将在Windows 7 64位与Java 1.4的32位工作?(Wha

2019-11-04 06:32发布

我试图找到一个旧的Java 1.4应用内存泄漏。 我曾尝试使用JMP但不幸的是我已经没有运气得到它的工作(它实际上是在Windows 7支持?)。

如果任何人的任何自由/开源Java 1.4内存分析器在Windows 7 64位绝对工作的人都知道,请告诉我。

Answer 1:

我用JMP直到我们移动到Java 1.6。

http://www.khelekore.org/jmp/

GCViewer是好的,如果你只是验证泄漏:

http://www.tagtraum.com/gcviewer.html



Answer 2:

SAP已经贡献了内存分析器偏食赋予非常漂亮和精致的报告。 检查以下链接

http://www.eclipse.org/mat/



Answer 3:

你已经尝试

jps -l
jmap -histo <pid>

然后,我会安装Java 6,运行相同的应用程序,并使用:

jconsole


Answer 4:

我已经使用YourKit Java剖析http://www.yourkit.com 。



Answer 5:

最后我做了以下内容:

  1. 添加-XX:HeapDumpPath=C:\Temp\HeapDump起始应用程序时,参数
  2. 等到它与内存不足的异常崩溃
  3. 使用内存分析器(MAT) ,看看有什么用这么多的内存。


Answer 6:

你在一个JVM 1.4,正确运行? 这不是一个1.6 JVM 1.4编译的类运行? 并且是那里,你不能运行在1.6 JVM的应用程序,至少在开发环境中的原因是什么?

如果不是,内置的HPROF剂应该工作,至少找到了内存泄漏。 它会告诉你哪些对象是活的 ,当你杀了你的程序,并在那里他们被分配。

我不是100%肯定,但我相信,你需要使用-Xrunhprof调用选项(链接文档与调用-agentlib ,我认为可能在1.5中添加)。 另外,我觉得有一个支持的“现代”调试接口,所以可以与JConsole中使用的1.4版本。



文章来源: What Java memory profiler applications will work on Windows 7 64-bit with Java 1.4 32-bit?