Java VisualVM在OOME上启用堆转储

时间:2011-11-29 13:16:34

标签: java profiling jvisualvm

根据documentation,当应用程序遇到OutOfMemoryException时,可以自动进行堆转储。
OutOfMemoryException过程刚刚从左侧菜单中消失 这个功能在VisualVM中如何工作?

感谢。


C:\ work \ temp> java -XX:HeapDumpPath = c:/work/temp/file.hprof -XX:+ HeapDumpOnOutOfMemoryError -jar example.jar

2 个答案:

答案 0 :(得分:19)

据我所知,JVisualVM中的该选项等同于将-XX:+HeapDumpOnOutOfMemoryError指定为JVM参数。这会导致JVM在遇到OutOfMemoryError时创建堆转储文件。然后可以将此文件加载到JVisualVM(或分析器)并在那里进行分析。存储文件的目录由-XX:HeapDumpPath参数定义。

另见:

答案 1 :(得分:3)

似乎应用程序刚刚退出OOM。在这种情况下,您必须使用特殊-XX参数运行您的应用。请参阅JVM documentation中的“转储”参数。应用程序死后,您可以检查工具中的转储。