245 단어
1 분
async를 붙이면 두 작업이 동시에 실행될까?
2026-09-27

async에 관한 학습 포스팅 예시다.

첫 네트워크 요청을 await한 다음 둘째 요청을 await하면 어떤 순서로 진행될까?

먼저 생각해 보기#

각 요청의 I/O 대기 시간을 타임라인으로 그려 보자. 함께 스케줄하면 어디가 달라질까?

생각한 뒤 답 보기

Python asyncio에서 코루틴을 차례로 await하면 첫 코루틴이 끝난 다음 둘째를 시작한다. asyncio.gather처럼 함께 스케줄하면 한 작업이 I/O를 기다리는 동안 다른 작업이 진행할 수 있다. CPU 연산을 여러 코어에서 자동 병렬 실행한다는 뜻은 아니다. 이벤트 루프를 오래 점유하는 동기 연산은 다른 작업도 막을 수 있다.

근거: 원문 자료.

다음 질문#

동시 요청 수를 무제한으로 늘리면 지연 시간도 계속 줄어들까?