Каковы "приостановленные" значения в сообщениях журнала GC_CONCURRENT? - PullRequest
8 голосов
/ 24 декабря 2010

Я пытаюсь изучить поведение нового параллельного сборщика мусора в GingerBread (2.3).

Может кто-нибудь объяснить подробности этих строк журнала (особенно "приостановленные" части GC_CONCURRENT и GC_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

Ответы [ 2 ]

18 голосов
/ 06 июля 2011
  • GC_CONCURRENT Куча (почти) заполнена.Поэтому одновременный сборщик мусора набирает

  • freed 510K - объем свободной памяти

  • 57% free - память после освобождения%
  • 2529K/5831K - Фактическая память в куче
  • external 716K/1038K - Внешне выделенная память (память, которая не находится в DVD)
  • paused 8ms+5ms - время, необходимое для GC

особенно «приостановленные» части

Для одновременных сборов есть два времени паузы.Один находится в начале коллекции, а другой - в конце.Для не одновременного сбора будет только одна пауза.

5 голосов
/ 01 июня 2011

, если вы еще не сделали, посмотрите это видео: http://www.google.com/events/io/2011/sessions/memory-management-for-android-apps.html

...