看板 java 關於我們 聯絡資訊
最近,在找該怎麼測程式記憶體使用量的問題 先爬過板上,有人提出使用 Runtime.getRuntime().totalMemory()-Runtime.getRuntime().freeMemory() 這個方式,我有一點疑問,就是 如果我用兩台不一樣的電腦下去跑相同的程式 跑出來的memory數量其實不太相同。 我想請問,為什麼不同? 照理來說使用的記憶體應該差不多,是否在執行的時候配置跟os有關? total memory 我測過是一樣的,但是freememory會改變,我想請問改變的原因是為何? 請各位解決我的疑惑,謝謝!! -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 120.125.85.72
tkcn:我不知道,但我想 JConsole 可以讓你觀察到更多東西 03/26 15:04
AmosYang:"請各位解決我的疑惑" <-- LOL XD 03/26 15:12
PsMonkey:那個 freeMemory() 的說明有仔細看嗎? 03/26 16:12
duple:請問樓上freememory 不是未使用的空間嗎? 03/26 17:02
dreamboxer:應該是你GC的不夠多... 請參考這篇文章 03/27 00:21