Android

Coroutine 예외 처리

열정창작소 2023. 1. 4. 19:15

Coroutine 예외 처리

1. CoroutineExceptionHandler를 이용 코루틴 내부 기본 catch block으로 사용

2. lauch, actor : Exception 발생시 바로 예외처리 발생

3. async, produce : 중간에 exception이 발생해도 await를 만나야 발생

4. job.cancel()을 제외한 다른 exception이 발생하면 부모의 코루 틴까지 모두 취소됨
- structured concurrency를 유지하기 위함

5. 여러개의 exception이 발생하면 가장 먼저 발생한 exception이 handler로 전달되며 나머지는 무시됨