#leakcanary
Вопрос:
Цитата из документа LeakCanary:
«Утечки памяти не могут быть устранены путем замены сильных ссылок слабыми ссылками. Это обычное решение при попытке быстро решить проблемы с памятью, однако оно никогда не работает. Ошибки, из-за которых ссылки сохранялись дольше, чем необходимо, все еще существуют. Кроме того, это создает больше ошибок, так как некоторые объекты теперь будут собираться в мусор раньше, чем следовало бы. Это также значительно усложняет обслуживание кода».
Может ли кто-нибудь объяснить, почему слабая связь не работает? Как я понимаю, в большинстве распространенных случаев, таких как удержание ссылки на уничтоженное действие, замена слабой ссылкой сделает уничтоженное действие доступным для сбора GC.