我在我的应用程序中使用带有JAVA的play框架。我的应用程序消耗的内存比分配的内存多。有时我会遇到像java.lang.OutOfMemoryException
这样的异常。请帮助我,如何发现java中的内存泄漏,以及如何减少java的内存使用量?我正在使用jProfiler
来查找内存泄漏,但我在这方面没有任何改进。
发布于 2013-06-28 07:20:16
在发生OOME时捕获堆转储的一个好方法是添加VM参数-XX:+HeapDumpOnOutOfMemoryError
。您将获得一个可以由JProfiler和其他工具打开的HPROF堆转储。
在JProfiler中,检查过多内存消耗的第一站是堆遍历器的“最大对象”视图。在许多情况下,使用太多内存的原因将一目了然。
https://stackoverflow.com/questions/17342760
复制