Закрытие подписки disposable в Rxjava в Android

Недавно на код ревью услышал от сеньора, что типа подписку Rxjava закрывать необязательно во вью модели, так как модель умрёт и подписка вместе с ней, а до тех пор она все равно ещё нужна или там один единственный ивент. Т.е. он утверждает, что можно dispose не делать, и что он вообще в студии вырубил ворнинги, с этим саязанные. Честно говоря, меня это немного покоробило, но он старший на проекте, а я новичок, и я не стал много спорить на эту тему. Так ли это?


Ответы (1 шт):

Автор решения: Shams

Если viewmodel подписан на какой нибудь долго живущий объект, он не будет уничтожен сборщиком мусора пока не отменить подписку. Поэтому надо отписаться в методе onCleared(). Можете прочитать про эту тему в этой статье в параграфе Leaking ViewModels

→ Ссылка