Flow retry, retryWhen
·
Study/Kotlin
이번 글에서는 예외로 인해 Flow가 비정상적으로 종료되었을 때해당 Flow를 다시 collect하는 방법에 대해 알아보려한다. 이런 시나리오가 필요한 가장 대표적인 예시에는 뭐가 있을까? 주기적으로 네트워크 요청을 통해 값을 갱신하는 화면이 있을 것이다. 코드로 예시를 보자.fun networkFlow(): Flow = flow { repeat(5) { index -> delay(1000) if (index 5번의 요청을 하고 마지막 요청에서는 예외가 발생하는 Flow를 만들어보았다. networkFlow() .catch { println("Handle exception in catch") } .collect { data -> print..