2010-08-20 2 views
2

Попытка найти информацию о GC. В моем журнале я часто вижу эти данные:андроид сборщик мусора lingo

08-19 22:35:27.513: DEBUG/dalvikvm(1981): GC_EXPLICIT freed 93 objects/3160 bytes in 999ms 
08-19 22:35:28.256: DEBUG/dalvikvm(2331): GC_FOR_MALLOC freed 15082 objects/523496 bytes in 47ms 

В чем разница между 2?

ответ

0

Когда вы вызываете System.gc(), сбор мусора GC_EXPLICIT произойдет некоторое время в будущем. Malloc - это термин C и функция распределения памяти. GC для malloced memory будет системой, очищающей ваши мертвые переменные java, потому что они больше не используются. (Это делается автоматически по мере необходимости).

+0

Иными словами, GC_FOR_MALLOC происходит «естественно» как часть выделения памяти. GC_EXPLICIT означает, что кто-то преднамеренно принудил GC выполнить. – fadden

Смежные вопросы