정의
코루틴(Coroutine)은 비동기 프로그래밍과 동시성(concurrency) 처리를 위한 프로그래밍 구조로, 함수나 루틴의 실행을 중단(suspend)하고 필요 시 다시 재개(resume)할 수 있는 특성을 가진다. 코루틴은 일반적인 서브루틴(subroutine)과 달리, 실행 흐름을 협력적으로 제어할 수 있으며, 이를 통해 효율적인 자원 관리와 코드 간결화를 가능하게 한다.
특징
- 중단과 재개: 코루틴은 실행 중간에 중단하고 상태를 저장한 뒤, 나중에 다시 실행을 재개할 수 있다.
- 비동기 처리: 입출력(I/O) 작업이나 긴 실행 시간을 요구하는 작업에서 비동기적으로 실행되며, 동시성을 지원한다.
- 가벼움: 코루틴은 스레드와 달리 가벼운 단위로 동작하며, 하나의 스레드에서 다수의 코루틴을 실행할 수 있다.
- 상태 유지: 코루틴은 중단된 시점의 상태를 유지하며, 재개 시 이전 상태를 복원하여 실행을 이어간다.
참 좋은 기술인데 나는 명확한 이유없이 경험적으로 싫어한다.
아름답지 못하다고 생각하고, Precedure가 조각나는 것을 싫어하는 듯하다.
나중에 근본적인 동작에 대해 자세히 알아보고 싶다.
'내일배움캠프' 카테고리의 다른 글
| 틱택토 게임 (1) | 2025.01.25 |
|---|---|
| Unity 7기 TIL (0) | 2025.01.24 |
| 만들고 싶은 게임 (1) | 2025.01.15 |
| [Unity 7기] TIL 12일차 (1) | 2025.01.09 |
| [Unity 7기] TIL 10일차 (0) | 2025.01.07 |