我懷疑我的應用程序有內存泄漏。我有GC日誌,當我看到它們時,我發現內存使用量約爲9-10GB。然後我嘗試將內存轉儲到該文件,文件大小約爲5GB。JRockit的完全內存轉儲
的問題是,爲什麼轉儲沒有大小了9GB,但只有5GB?我如何強制jrcmd轉儲完整內存?
命令,我使用:
jrcmd 11906 hprofdump filename=/path_to_dump/dump.hprof
JVM:
Java(TM) Platform, Standard Edition for Business (build 1.5.0_28-b04)
Oracle JRockit(R) (build R28.1.3-11-141760-1.5.0_28-20110301-1432-linux-x86_64, compiled mode)
更新:
的問題是,由於GC日誌內存空間還沒有釋放出來,以水平低於9GB 。將JDK工具截斷轉儲爲5GB。爲什麼?
但由於GC登錄我的記憶永遠不會被釋放低於9GB。爲什麼這些垃圾沒有被GC釋放,但被工具忽略了? – lbednaszynski 2014-11-24 15:08:38
這些完整的GC還是增量GC?預計增量GC不能清除所有垃圾? – 2014-11-25 14:14:19