Cplusplus201 C++20 코루틴과 awaitable task C++20이 도입되면서 가장 주목받은 기능 중 하나는 코루틴이다. 코루틴은 기존 함수 호출과 달리 실행을 중단하고 다시 이어갈 수 있다는 점에서 새로운 프로그래밍 패러다임을 가능하게 한다. 특히 비동기 처리를 표현할 때 강력한 도구가 된다. 그 핵심에 자리 잡은 개념이 바로 awaitable과 task다. 우선 task는 하나의 비동기 작업 단위를 표현하는 객체다. 함수가 값을 즉시 반환하지 않고, 미래에 준비될 값을 약속하는 컨테이너와 같다. 이 task는 단순히 비동기적으로 실행되는 함수의 껍질이 아니라, 그 함수의 실행 상태를 추적하고, 필요할 때 결과를 기다릴 수 있도록 만들어진다. 따라서 task는 단순한 함수 호출과 달리, 현재 실행 중인 루틴과 독립적으로 진행되며, 호출자는 그 결과를 co_.. 2025. 9. 3. 이전 1 다음