Coroutines try-catch vs ExceptionHandler

2025. 7. 23. 18:30·Study/Kotlin
728x90
반응형

이번 글에서는 try-catch와 ExceptionHandler를 비교해보려고 한다.

 

얼핏 보기에는 둘 다 예외 처리의 기법으로만 보고 넘어갈 수도 있지만,

각각 사용해야하는 상황이 다르기 때문이다.

 

try-catch 관점

try-catch는 예외가 발생하고나서도 계속 작업이 필요한 경우에 사용된다.

 

예를 들면, 코루틴 내부에서 재시도하는 로직이 필요한 경우이다.

 

try-catch 구문을 사용해 예외를 잡아내고 해당 예외를 다시 전파시키지 않는다면

예외는 상위 계층으로 전파되지 않는다.
(부모 코루틴에게 전파되지 않는다)

 

예외가 발생했음에도 상위 계층으로 예외가 전파되지 않는다면

Structured Concurrency를 해칠 수 있다.

 

ExceptionHandler 관점

try-catch와는 달리 계속해서 작업이 필요없는 경우에 사용할 수 있다.

 

ExceptionHandler에 의해 처리된다는 것은 이미 해당 코루틴이

예외가 발생했고 종료되었다는 의미이기 때문이다.

 

그래서 보통 에러 메시지를 출력하거나 앱을 종료 및 재시작하는 용도로 사용한다.

728x90
반응형
저작자표시 비영리 변경금지 (새창열림)

'Study > Kotlin' 카테고리의 다른 글

launch vs async in Coroutines Exception Handling  (1) 2025.08.16
Exception Handling Using ExceptionHandler in Coroutines  (0) 2025.05.30
Exception Handling Using try-catch Clause in Coroutines  (0) 2025.05.06
NonCancellable Coroutines 사용해보기  (0) 2025.04.07
Coroutines Cooperative Cancellation  (0) 2025.04.06
'Study/Kotlin' 카테고리의 다른 글
  • launch vs async in Coroutines Exception Handling
  • Exception Handling Using ExceptionHandler in Coroutines
  • Exception Handling Using try-catch Clause in Coroutines
  • NonCancellable Coroutines 사용해보기
BonusTrack02.dev
BonusTrack02.dev
공부, 일상
  • BonusTrack02.dev
    BonusTrack02.dev
    BonusTrack02.dev
  • 전체
    오늘
    어제
    • 분류 전체보기 (240)
      • Dev experience (87)
        • Android (86)
        • Kotlin (1)
      • Study (64)
        • Kotlin (28)
        • Swift (17)
        • Java (19)
      • 프로그래머스 (68)
      • 주저리주저리 (21)
        • 카페 (5)
        • 음식점 (4)
        • 컨퍼런스 (1)
        • 팝업스토어 (4)
        • 전시회 (1)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    스위프트
    android
    CodeLab
    LiveData
    SWIFT
    room
    databinding
    티스토리챌린지
    오블완
    배열
    ios
    자바
    aac
    coroutines
    Kotlin
    Java
    getNumericValue
    PCCE
    안드로이드
    daterangepicker
    ViewModel
    코틀린
    Material
    프로그래머스
    programmers
    Observer
    MVVM
    jetpack
    viewModelScope
    코루틴
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
BonusTrack02.dev
Coroutines try-catch vs ExceptionHandler
상단으로

티스토리툴바