Ответ
Плюсы:
- Позволяет выполнять операции с заданным интервалом (например, обновление UI, опрос сервера).
- Работает в фоновом потоке по умолчанию (если не указан
observeOn). - Легко отменяется через
Disposable.
Минусы:
- Может вызывать утечки памяти, если не отписываться.
- Требует управления жизненным циклом (например, отписка в
onDestroy). - Если не указать
observeOn, UI-обновления могут вызыватьNetworkOnMainThreadException.
Пример:
val disposable = Observable.interval(1, TimeUnit.SECONDS)
.observeOn(AndroidSchedulers.mainThread())
.subscribe { tick -> updateUI(tick) }
// Не забыть отписаться
override fun onDestroy() {
disposable.dispose()
}