2011-12-05 46 views
3

我一直在挖掘到我的應用程序的內存使用情況。在android中可笑的proc/meminfo。 「大小」是什麼意思?

所以,要知道內存使用情況,我寫的運行meminfo一些腳本(每行10秒後顯示)

NativeSize DalvikSize TotalSize 
89556 5895 95451 
89556 5959 95515 
89556 6023 95579 
89556 6087 95643 
89556 6151 95707 
89556 6215 95771 
89556 6279 95835 

NativeAlloc DalvikAlloc TotalAlloc 
13943 3238 17181 
15959 3334 19293 
16264 3390 19654 
16570 3447 20017 
16877 3503 20380 
17177 3559 20736 
17251 3636 20887 

NativeFree DalvikFree TotalFree 
376 2657 3033 
8 2625 2633 
27 2633 2660 
44 2640 2684 
26 2648 2674 
42 2656 2698 
280 2643 2923 

NativeFree = NativeSize - NativeAlloc,對不對?

另一個問題,NativeSize varys當我的應用程序加載其他動畫。我認爲NativeSize已修復。

回答

0

(預蜂窩):

有在Adnroid內兩個堆。 Dalvik heapnative heap。您的應用數據存儲在Dalvik堆中,除了位圖之外。對於位圖,圖像元數據存儲在Dalvik堆中,但實際位圖像素數據存儲在本機堆中。

NativeSize是您的應用在native heap上使用的內存量。例如,如果您加載更多圖片,您將看到NativeSize將會增長。這就是您的應用程序加載其他動畫時NativeSize會發生變化的原因

我猜NativeFree,DalvikFree是被釋放的字節,所以它與NativeSize - NativeAlloc沒有任何關係。

更多信息請參閱本: http://www.youtube.com/watch?v=_CruQY55HOk

+0

問題的細節,程序運行和加載任意東西,nativeSize改變'噸,但我認爲,程序啓動時nativeSize確定。我認爲這個視頻對我有幫助。太好了。謝謝。 –

+0

http://meta.stackexchange.com/a/5235/172216 – Caner

+0

啊,而且NativeSize⊇NativeAlloc是否正確? –