I/O 대기 작업을 구조화하고 취소·시간 제한을 처리합니다.
asyncio는 하나의 event loop에서 coroutine이 I/O 대기 때 실행권을 양보하게 합니다. CPU 계산을 빨라지게 하지 않으며 blocking 함수를 그대로 호출하면 전체 loop를 막습니다.
독립 작업은 TaskGroup이나 gather로 구조화하고 timeout과 cancellation을 정상 제어 흐름으로 처리합니다.
동시 요청 수는 Semaphore와 connection pool로 제한해 상대 서버와 자신의 파일 descriptor를 보호합니다.
코루틴을 생성만 하고 await하지 않으면 실행 완료와 오류를 잃습니다.
async 함수 안에서 time.sleep을 호출하지 말고 asyncio.sleep이나 비동기 라이브러리를 사용하세요.
직접 바꿔보세요세 작업을 동시에 실행하고 전체 제한 시간을 적용해보세요.
실행 버튼을 누르면 결과가 여기에 표시됩니다.