Course Content
-
Введение в RxJava 3.0. Способы создания Observable В первом модуле вы узнаете чем отличается Observable от Observer и поймете как создать источник данных
-
Основные операторы RxJava 3.0 Рассмотрим на примерах самые популярные операторы RxJava 3.0 такие как map(), flatMap(), filter() и другие.
-
Выходим в сеть с помощью RxJava
Disposable
В этом уроке мы поговорим о Disposable. Это интерфейс, необходимый нам для очищения ресурсов после отмены подписки.
Если взглянуть на интерфейс Observer – в нем есть метод onSubscribe. Этот метод вызывается сразу же, как только вы начинаете прослушивать Observable и он передаст вам объект типа Disposable.
Применительно к Observable тип Disposable позволяет вызывать метод dispose, означающий «Я закончил работать с этим ресурсом, мне больше не нужны данные». Если у вас есть сетевой запрос, то вы отписываетесь от получения результатов. Если вы прослушивали бесконечный поток нажатий кнопок, то это будет означать, что вы больше не хотите получать эти события, в таком случае можно удалить OnClickListener у View.
Соответсвено чтобы использовать метод dispose для отмены подписки и очищения ресурсов необходимо вызвать метод dispose()
CompositeDisposable.
Однако, как правило, у вас в приложении будут использоваться сразу несколько подписок, поэтому удобней использовать CompositeDisposable. Вы можете добавлять несколько подписок в CompositeDisposable а потом, в нужном месте, например в методе onStop() жизненного цикла Activity очистить все подписки разом с помощью метода clear()