본문 바로가기
반응형

ExceptionHandling2

Coroutine Async와 await 사용시 Exception Handling 방법 정리#Kotlin Coroutine에서 비동기 코드에서의 반환 값이 필요할 때,코루틴 빌더인 async와 await()함수를 사용합니다. 하지만 이 API들은 Exception을 핸들링 할 때 주의가 필요한데요.오늘은 async와 await() 사용시,Exception을 핸들링 하는 방법에 대해 알아보겠습니다. 1. async 예외 전파 이해하기코루틴 빌더인 async와 await함수를 사용시,Exception핸들링을 하려면,코루틴의 예외 전파방식에 대해 이해해야 하는데요. 먼저 보아야 할 것이,코루틴 빌더인 async의 리턴타입입니다.아래와 같이 Deferred타입인데요.이 타입은 아래 보이는 것처럼, Job을 상속받고 있습니다.  코루틴 빌더인 async는,Job을 통해 부모-자식 관계가 형성되구요.Exception.. 2025. 1. 13.
Kotlin Coroutine 총정리 part2 # Cancellation Exception Handling 이 글은 이전글에 이어서, Exception Handling과 Cancellation 그리고 여러개의 Job을 다룰때의 주의점등에 대해서 정리해 보겠습니다.참고로 이전 글을 아래 링크를 참조해주세요.>> Kotlin Coroutine 총정리 part1 # launch async Context Job CoroutineScope 1. Exception HandlingCoroutine이 취소(cancel)되면, CancellationException이 발생하여 전파됩니다. 하지만 이 예외는 suspension point에서 자동으로 처리되어 무시되는데요.Kotlin coroutine에서 취소 처리를 위한 정상적인 방법이기 때문입니다.suspension point에서 예외를 자동으로 처리함으로써, 개발자가 일일.. 2022. 10. 9.