728x90
반응형

coroutinescope 2

[코루틴 (3)] Structured Concurrency와 코루틴 스코프

지난 2편에서는 코루틴의 기초 API인 suspend, launch, async에 대해 살펴보았습니다.이번 글에서는 Structured Concurrency 개념에 집중해, 부모-자식 코루틴 구조와 코루틴 스코프가 어떻게 동작하는지 알아보겠습니다.  핵심 키워드 • Structured Concurrency • 부모-자식 코루틴 • coroutineScope { } • supervisorScope { } • 예외 전파와 취소(Cancellation)1. Structured Concurrency란? 1.1 기존 비동기 모델의 문제점 코루틴이 등장하기 전에는, 콜백 기반 비동기 처리 혹은 스레드 직접 관리 방식을 통해 여러 작업을 동시에 수행했습니다. 하지만 다음과 같은 문제가 빈번히 발생했습니다. • 스레..

코딩 2025.01.17

[코루틴 (2)] 코루틴의 기초 API: suspend, launch, async

지난 1편에서 코루틴 탄생 배경과 기본 개념을 간단히 살펴보았습니다.이번 글에서는 코루틴의 기초 API를 좀 더 구체적으로 파악하고, 비동기 로직을 간결하게 작성할 수 있는 방법을 예제를 통해 알아보겠습니다.  핵심 키워드 • suspend 함수 • launch • async / await • runBlocking • CoroutineScope1. suspend 함수 복습하기 1.1 suspend란 무엇인가suspend는 코루틴 환경에서 “일시 중단 가능한 함수”를 의미합니다.내부적으로 비동기 I/O나 지연(Delay) 작업을 수행할 때, 스레드를 고정적으로 점유하지 않고 일시 중단(suspend)했다가, 필요한 시점에 다시 재개(resume)하여 계속 코드를 실행할 수 있게 해줍니다.suspend f..

코딩 2025.01.16
728x90
반응형