是-XX:+;HEAPDUMPONAUTOFMEMORYERROR选项是否与Oracle应用程序服务器一起工作?

是-XX:+;HEAPDUMPONAUTOFMEMORYERROR选项是否与Oracle应用程序服务器一起工作?,memory,jakarta-ee,profiling,oc4j,Memory,Jakarta Ee,Profiling,Oc4j,我们有时会在生产过程中遇到一个OutOfMemoryError,我希望能够分析问题的原因,或者至少分析问题发生时的情况。似乎我应该能够通过使用-XX:+HeapDumpOnOutOfMemoryError选项获得HProf配置文件,但我已经了解到这是JVM特有的 是否有人成功地将此选项用于Oracle Application Server v10.1.2.0.2?如果是这样的话,您对如何分析生成的文件有什么建议吗?此选项特定于SUN/SAP/HP JVM,如果您使用JRockit VM,我怀疑它

我们有时会在生产过程中遇到一个OutOfMemoryError,我希望能够分析问题的原因,或者至少分析问题发生时的情况。似乎我应该能够通过使用-XX:+HeapDumpOnOutOfMemoryError选项获得HProf配置文件,但我已经了解到这是JVM特有的


是否有人成功地将此选项用于Oracle Application Server v10.1.2.0.2?如果是这样的话,您对如何分析生成的文件有什么建议吗?

此选项特定于SUN/SAP/HP JVM,如果您使用JRockit VM,我怀疑它是否有效。JRockit也可能根本不支持hprof格式,因为Java规范不需要它


您可能需要检查我所知道的唯一接近for的工具。它似乎支持JRockit

是的,这取决于您的JVM版本。有些JVM似乎不支持-XX:+HeapDumpOnOutOfMemoryError参数。

Oracle OC4J经过Sun JVM 1.3.1和1.4.2认证(请参阅)

-XX:+HeapDumpOnOutOfMemoryError选项是在Java6中引入的,并后端口到Java5.0更新7和Java1.4.2更新2。因此,为了使用这个选项,您应该在其中一个JVM上运行OC4J

要分析hprof内存转储,可以使用很多工具,如Eclipse内存分析器(包含在Eclipse3.5Galileo中)、VisualVM或NetBeans