4장 일시 중단 함수와 코루틴 컨텍스트
코틀린 동시성 프로그래밍 4장을 요약한 내용입니다.
일시 중단 함수
interface ProfileServiceRepository {
fun asyncFetchByName(name: String) : Deferred<Profile>
fun asyncFetchbyId(id: Long) : Deferred<Profile>
}class ProfileServiceClient : ProfileServiceRepository {
override fun asyncFetchByName(name: String) = GlobalScope.async {
Profile(1, name, 28)
}
fun asyncFetchbyId(id: Long) : GlobalScope.async {
Profile(id, "Susan", 28)
}
}fun main(args: Array<String>) = runBlocking {
val client : ProfileServiceRepository = ProfileServiceClient()
val profile = client.asyncFetchById(12).await()
println(profile)
}일시 중단 함수로 업그레이드
일시 중단 함수와 비동기 함수
코루틴 컨텍스트
디스패처
CommonPool
예외 처리
Non-cancellable
컨텍스트에 대한 추가 정보
컨텍스트 결합
컨텍스트 조합
컨텍스트 분리
요약
Last updated