Android: GC не уважает SoftReferences?

Похоже, сборщик мусора Dalvik не уважает SoftReferences и удаляет их как можно скорее, как и WeakReferences. Я еще не уверен на 100%, но, несмотря на то, что все еще есть ~ 3 МБ свободной памяти, мои SoftReferences очищаются после того, как я увижу в LogCat сообщение «GC освобождает bla-bla-bla bytes».

Кроме того, я видел комментарий Марка Мерфи здесь :

За исключением того, что это не работает на Android, по крайней мере, в версии 1.5 временное ограничение. Я понятия не имею, Исправлены ошибки SoftReference. SoftReferences слишком рано получают GC с этот баг.

Это правда? Не соблюдаются ли SoftReferences?

Как это обойти?

10
задан JBM 25 October 2010 в 11:19
поделиться