2012-08-05 39 views
2

我正在創建對象並將其從一個actor傳遞到另一個actor。我需要計算用於在運行時創建對象的內存?有沒有辦法呢?試圖計算對象佔用的內存

我想要做這樣的事情。

var x = Runtime.getRuntime().totalmemory() 
object.create() // my function to create an instance of an object 
var y = Runtime.getRuntime().freememory() 
val memoryUsedForCreatingObject = x - y 

您是否認爲這是正確的做法?它會給我正確的結果嗎?請讓我知道

+0

我可以推薦給駱駝情況下,'memoryusedforcreatingobject'?這很難閱讀。 'memoryUsedForCreatingObject'如何? – ChiefTwoPencils 2012-08-05 04:28:42

+0

這只是一個例子...我使用不同的變量爲我的真實代碼.. – 2012-08-05 05:19:53

回答

2

你最好的選擇可能是JAMM:https://github.com/jbellis/jamm/

+0

我們可以在scala中使用它..可以讓我知道,如果我在做什麼是錯誤的? – 2012-08-05 05:08:29

+1

@ CuriousGuy007是的,我們可以,因爲Scala可以與Java互操作,Jamm是Java庫。順便說一句,我可以建議只使用一個問號嗎? – 2012-08-05 09:10:22