android 中可笑的 proc/meminfo。 ‘size’ 是什么意思?意思是?
我一直在研究我的应用程序中的内存使用情况。
因此,为了了解内存使用情况,我编写了一些运行 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
会有所不同。我认为 NativeSize
是固定的。
I've been digging into memory usage in my app.
So, to know memory usage, I write some scripts that runs meminfo
(each line shows after 10second)
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
, right?
And another question, NativeSize
varys when my application loads other animation. I think NativeSize
is fixed.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
(Pre Honeycomb):
adnroid中有两个堆。
Dalvik 堆
和本机堆
。您的应用程序数据存储在 Dalvik 堆中(位图除外)。对于位图,图像元数据存储在 Dalvik 堆中,但实际位图像素数据存储在本机堆中。NativeSize
是您的应用在本机堆
上使用的内存量。例如,如果您加载更多图像,您将看到NativeSize
将会增大。这就是当您的应用程序加载其他动画时 NativeSize 会发生变化的原因。我猜
NativeFree
、DalvikFree
是释放的字节,因此它与NativeSize - NativeAlloc
无关。请参阅此了解更多信息:
http://www.youtube.com/watch?v=_CruQY55HOk
(Pre Honeycomb):
There are two heaps in adnroid.
Dalvik heap
andnative heap
. Your app data is stored in Dalvik heap except for bitmaps. For bitmaps, image meta data is stored in Dalvik heap, but actual bitmap pixel data is stored in native heap.NativeSize
is the amount of memory your app is using onnative heap
. For example, if you load more images you will see thatNativeSize
will grow. This is why NativeSize varies when your application loads other animation.I guess
NativeFree
,DalvikFree
are the bytes freed, so it has nothing to do withNativeSize - NativeAlloc
.See this for more info:
http://www.youtube.com/watch?v=_CruQY55HOk