반응형
개요
코루틴에서 실행되는 모든 중단 함수(suspending function)들은 취소 요청에 응답 가능하도록 구현되어야 합니다. 다시말해 중단 함수는 실행 중 취소 가능한 구간마다 취소 요청이 있었는지 확인하고 요청이 있었다면 실행을 즉시 취소하도록 구현되어야 합니다. kotlinx.coroutines 라이브러리의 모든 중단함수는 이러한 취소 요청에 대응 하도록 구현되어 있습니다.
앞서 이야기 한 것처럼 취소를 지원하는 중단 함수들은 실행하는 동안 취소가 가능한 지점마다 현재 코루틴이 취소 되었는지 확인하며, 만약 취소 되었다면 CancellationException 을 발생시키며 종료합니다.
출처: Medium Article
위 글처럼 코루틴의 중요한 특징 중 하나는 취소가 가능하다는 점이다.
이번 글에서는 코루틴의 취소에 대해 알아본다.
목차
- 코루틴 취소
- 취소의 작동
- 취소 중 코루틴 호출
- 취소 완료 후 동작
- 중단점이 없을 때 중단하는 방법
- 방법 1. yield() 주기적으로 호출
- 방법 2. Job 상태 추적
- 방법 3. ensureActive() 함수 사용
- 코루틴 중단 중 타임 아웃
코루틴의 취소 | Built with Notion
개요
dongbin-note.notion.site
반응형
'Kotlin' 카테고리의 다른 글
[kotlin] 코루틴 스코프 함수 (0) | 2024.01.07 |
---|---|
[kotlin] 예외 처리 (0) | 2024.01.07 |
[kotlin] 코루틴 컨텍스트 (0) | 2024.01.07 |
[kotlin] 코루틴 빌더 (0) | 2024.01.07 |
[kotlin] 코틀린의 중단 (0) | 2024.01.07 |