2013-06-27 28 views
4

我正在爲我的應用程序使用帶有JAVA的播放框架。我的應用程序比分配的內存消耗更多內存有時候我會得到像java.lang.OutOfMemoryException這樣的例外。請幫助我,如何在java中找到內存泄漏以及如何減少java的內存使用情況?我正在使用jProfiler來查找內存泄漏,但是我對此沒有任何改進。Play框架應用程序中的內存泄漏

+0

分配的內存多少錢? – Thihara

+0

我已經分配了150MB,但申請需要280MB – MadTech

+0

做一個轉儲,並開始挖掘:) – mavarazy

回答

3

OOME發生時捕獲堆轉儲的好方法是添加VM參數-XX:+HeapDumpOnOutOfMemoryError。您將得到一個可以通過JProfiler和其他工具打開的HPROF堆轉儲。

在JProfiler中,檢查過量內存消耗的第一站是堆棧的「最大對象」視圖。在很多情況下,爲什麼會使用太多的內存,這一點很明顯。