코루틴 가이드
Kotlin은 다른 라이브러리들이 코루틴을 활용할 수 있도록 표준 라이브러리에 최소한의 저수준 API만을 제공합니다. 유사한 기능을 가진 다른 많은 언어와 달리, async와 await는 Kotlin의 키워드가 아니며 표준 라이브러리의 일부도 아닙니다. 또한, Kotlin의 일시 중단 함수(suspending function) 개념은 퓨처(futures)나 프로미스(promises)보다 비동기 작업에 대해 더 안전하고 에러 발생 가능성이 적은 추상화를 제공합니다.
kotlinx.coroutines는 JetBrains에서 개발한 코루틴을 위한 풍부한 라이브러리입니다. 이 가이드에서는 launch, async 등을 포함하여 코루틴이 적용된 다양한 고수준 프리미티브(primitives)를 다룹니다.
이 문서는 kotlinx.coroutines의 핵심 기능에 대한 가이드로, 여러 주제로 나뉘어 있으며 일련의 예제를 포함하고 있습니다.
코루틴을 사용하고 이 가이드의 예제를 따라 하려면, 프로젝트 README에 설명된 대로 kotlinx-coroutines-core 모듈에 대한 의존성을 추가해야 합니다.
목차
- 코루틴 기초(Coroutines basics)
- 튜토리얼: 코루틴과 채널 소개
- 취소와 타임아웃
- 일시 중단 함수 구성하기
- 코루틴 컨텍스트와 디스패처
- 비동기 플로우(Asynchronous Flow)
- 채널(Channels)
- 코루틴 예외 처리
- 공유 뮤터블 상태와 동시성
- Select 표현식 (실험적)
- 튜토리얼: IntelliJ IDEA를 사용하여 코루틴 디버깅하기
- 튜토리얼: IntelliJ IDEA를 사용하여 Kotlin Flow 디버깅하기
