2015-11-06 56 views
0

我有一個程序沒有用完堆,但使用匿名/本地內存的增長和增長。我怎麼去弄清楚什麼是使用這個內存?如何判斷匿名內存的使用情況?

+1

Java HPROF? HPROF:http://docs.oracle.com/javase/7/docs/technotes/samples/hprof.html – JJF

回答

0

檢查一個堆轉儲爲DirectByteBuffer對象,並保留它們。文件映射也是一個原因,但是你說匿名映射,這可能不是問題,因爲這些將被命名。

對於某些事情native memory tracking也許是有用的。

如果既不是DirectByteBuffer實例,也不是由VM管理的其他內存池,它可能是您的應用程序使用的某個本地庫。

+0

謝謝!如何獲得DirectByteBuffer的堆轉儲? –