GC_CONCURRENT日志消息中的"暂停"值是什么?

use*_*463 8 android garbage-collection android-sdk-2.3

我正在尝试在GingerBread(2.3)中探索新的并发垃圾收集器的行为.

可能有人请解释这些细节例如日志行(尤其是"暂停"的部分GC_CONCURRENTGC_FOR_MALLOC)?

12-24 10:20:54.912 D/dalvikvm(  414): GC_CONCURRENT freed 510K, 57% free 2529K/5831K, external 716K/1038K, paused 8ms+5ms

12-24 10:20:54.963 D/dalvikvm(  414): GC_FOR_MALLOC freed 510K, 57% free 2529K/5831K, external 716K/1038K, paused 47ms
Run Code Online (Sandbox Code Playgroud)

Ren*_*eno 18

  • GC_CONCURRENT堆(几乎)满了.因此并发GC开始了

  • freed 510K - 释放的内存量

  • 57% free - 释放后的记忆%
  • 2529K/5831K - 堆中的实际mem
  • external 716K/1038K - 外部分配的内存(不在dvm中的内存)
  • paused 8ms+5ms - GC所用的时间

特别是"暂停"的部分

对于并发集合,有两个暂停时间.一个是收集的开头,另一个是收尾.对于非并发收集,只有一个暂停时间.