在今天的时候,公司因为要使用一块小的低版本开发板运行程序,所以出现了这个情况.
错误:
之后多次搜索 SuspendAll starting 但是没有搜索到相关的内容,所以再次转换思维,搜索起了 GC_FOR_ALLOC,终于在一番搜索之下找到相关的内容,
| LOG信息 | 描述 |
|---|---|
| freed 836K | 此次回收1063K |
| 27% free | 可用内存空间15% |
| 9653K/13116K | 活跃对象与总大小具体指 |
| paused 101ms | 暂停进行垃圾回收用时29ms |
| total 104ms | 总用时30ms |
发现这个问题之后,首先查看的是运行线程的数量
指令: adb shell -> ps -> cat proc/{pid}/status -> cat /proc/sys/kernel/threads-max
查看应用使用内存大小
之后使用 adb shell 在terminal 查看获得以下结果:
- small 394408 kb
- big 1040368 kb
所以,得出内存不足造成 dalvikvm 虚拟机触发gc垃圾回收导致应用无法运行的问题. 注: