개요

코루틴: 언어 차원 VS 라이브러리 차원

코틀린은 코루틴을 두가지 측면으로 지원하고 있다.

언어 차원의 지원

코틀린 언어 차원에서는 자유도를 보장하기 위해 코루틴을 최소한으로만 지원하고 있다.

kotlin.coroutines 패키지에 포함되어 있다.

코루틴 라이브러리

별도로 제공되는 코루틴 라이브러리로 의존성을 추가해야 사용할 수 있다.

kotlinx.coroutines 패키지에 포함되어 있다.

코루틴 빌더란?

중단 함수는 Continuation 객체를 다른 중단 함수로 전달해야 한다. 따라서 일반 함수는 중단 함수를 호출하지 못한다.

Untitled

중단 함수를 따라 올라가보면 가장 상단에 중단 함수에서 시작되는 지점이 있을 것이다.

코루틴 빌더가 일반 함수와 중단 함수를 연결하는 다리 역할을 한다.