Я пытаюсь понять retryWhen оператор, и у меня есть некоторый код, как показано ниже.
Flowable.just(1, 2, 3, 4, 5)
.subscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread())
.retryWhen { throwable ->
Log.d("Debug", "retryWhen proceed...")
throw Exception("There is a exception")
}
.subscribe(
{ item ->
Log.d("Debug", "success : $item")
},
{ throwable ->
Log.d("Debug", "error : ${throwable.message}")
},
{
Log.d("Debug", "complete")
}
)
И результат показан ниже.
Отладка: повторите при продолжении ...
Отладка: ошибка: исключение
Вопрос в том, когда при повторной попытке запускается оператор?
Я предполагаю, что retryWhen оператор будет запущен только при возникновении исключения.
Но результат явно не тот, о котором я думал,
Есть мысли по этому поводу? Спасибо!