
백엔드
코루틴(Coroutine)이 뭔데?
두줄요약
코루틴의 기본 개념과 비동기 처리 원리를 Kotlin 예시로 설명했습니다.\n`async`, `await`, `suspend`를 통해 실행 흐름을 쉽게 이해하도록 정리했습니다.
핵심 내용
- 코루틴의 기본 개념과 비동기 프로그래밍에서의 역할 소개
- 스레드 차단을 줄이고 I/O 대기 동안 다른 작업을 처리하는 방식
- Kotlin의
kotlinx.coroutines와async,await,suspend예시로 실행 흐름 설명
구조와 흐름
runBlocking안에서launch와async로 작업을 분리하는 흐름delay를 이용한 I/O 대기 중 중단과 재개 동작- 결과 수집 시
await로 비동기 작업 완료 대기
선택 이유
- UI 응답성 유지와 I/O 중심 작업 처리에 적합한 방식
- Kotlin에서 비동기 코드를 더 읽기 쉽게 구성하는 수단
- 멀티플랫폼과 MSA 환경에서 활용 가능성 제시
주의할 점
- 코루틴이 스레드 자체를 없애는 개념은 아님
- 목적에 맞는
launch,async,suspend사용 구분 필요 - 비동기 흐름 이해 없이 사용하면 코드 추적이 어려울 수 있음
