GC_EXTERNAL_ALLOC freed
来源:互联网 发布:淘宝异地客服找工作 编辑:程序博客网 时间:2024/06/02 04:50
I was also looking for this information.
GC stands for garbage-collector, which collects unused objects during runtime of your app.
- GC_EXTERNAL_ALLOC: Means that the VM is trying to reduce the amount of memory used collectable objects, to make room for non-collectable objects.
- GC_FOR_MALLOC: Means that the GC was triggered because there wasn't enough memory left on the heap to perform an allocation. Might be triggered when new objects are being created.
- GC_CONCURRENT: Triggered when the heap has reached a certain amount of objects to collect.
- I am guessing that the 38% free means that 38% of the heap is unused. 8772K would be the size of the used memory on the heap and 14087K would be the size of the heap.
- I don´t know, sorry.
Please note that all of this information is based on a post from Robert on a similiar question posted here on stackoverflow. All credit (as long as this is correct) goes to Robert.
Another place where the Dalvik garbage collector messages are explained is in this video:Google I/O 2011: Memory management for Android Apps
At about 14 minutes into the presentation, he breaks down the message format. (BTW, that video has really good info on debugging memory leaks)
Roughly speaking, the format is [Reason] [Amount Freed], [Heap Statistics], [External Memory Statistics], [Pause Time]
Reason
Viktor/Robert already explained GC_CONCURRENT
, GC_FOR_MALLOC
,GC_EXTERNAL_ALLOC
.
There is also:
GC_HPROF_DUMP_HEAP
- If you dump heap by clicking the "dump heap" button from DDMS or programaticallyGC_EXPLICIT
- If you call System.gc()
Amount Freed
E.g. freed 2125K
Self explanatory
Heap Statistics
E.g. 47% free 6214K/11719K
These numbers reflect conditions after the GC ran. The "47% free" and 6214K reflect the current heap usage. The 11719K represents the total heap size. From what I can tell, the heap can grow/shrink, so you will not necessarily have an OutOfMemoryError if you hit this limit.
External Memory Statistics
E.g external 7142K/8400K
Note: This might only exist in pre-Honeycomb versions of Android (pre 3.0).
Before Honeycomb, bitmaps are allocated external to your VM (e.g. Bitmap.createBitmap() allocates the bitmap externally and only allocates a few dozen bytes on your local heap). Other examples of external allocations are for java.nio.ByteBuffers.
Pause Time
If it's a concurrent GC event, there will be two times listed. One is for a pause before the GC, one is for a pause when the GC is mostly done.E.g.paused 3ms+5ms
For non-concurrent GC events, there is only one pause time and it's typically much bigger.E.g.paused 87ms
- GC_EXTERNAL_ALLOC freed
- GC_EXTERNAL_ALLOC freed
- GC_EXTERNAL_ALLOC freed 与 GC_EXPLICIT freed 是什么?
- GC_EXTERNAL_ALLOC freed 与 GC_EXPLICIT freed 是什么?
- 有关Android APK安装不了的问题—— GC_EXTERNAL_ALLOC freed 与 GC_EXPLICIT freed
- GC_EXTERNAL_ALLOC
- GC_EXTERNAL_ALLOC freed 1793K, 59% free 3312K/7943K, external 8616K/8616K, paused 54
- GC_EXTERNAL_ALLOC的含义
- android GC_CONCURRENT and GC_EXTERNAL_ALLOC
- Heap使用及GC_EXTERNAL_ALLOC含义
- Heap使用及GC_EXTERNAL_ALLOC含义
- Android中GC_EXTERNAL_ALLOC的含义小结
- 内存调试: GC_CONCURRENT freed
- gc for alloc freed
- double freeing of freed memory
- fwrite和freed的返回值
- GC_CONCURRENT freed 循环不停打印日志
- oracle中报错Connect internal only, until freed
- HTTP协议 GET POST 的区别
- MSP430F249GPIO控制入门
- [C++] 分别设计只能在栈, 堆中分配内存的类!
- UPDATE子查询的ORA-1779错误
- 工作笔记:mysql
- GC_EXTERNAL_ALLOC freed
- HBase存储
- WP开发入门指南:如何学习WP开发?
- 短时间连续访问新浪微博搜索页面致使“你的行为有些异常,请输入验证码:”解决方法
- Linux字体安装
- 屏蔽网页防复制脚本
- MSP430F249数码管显示
- 第七周改错
- 手把手教你ARC——iOS/Mac开发ARC入门和使用