asyncio — Asynchronous I/O


asyncio는 async/await 구문을 사용하여 동시성 코드를 작성하는 라이브러리입니다.

asyncio는 고성능 네트워크 및 웹 서버, 데이터베이스 연결 라이브러리, 분산 작업 큐 등을 제공하는 여러 파이썬 비동기 프레임워크의 기반으로 사용됩니다.

asyncio는 종종 IO 병목이면서 고수준의 구조화된 네트워크 코드에 가장 적합합니다.

asyncio는 다음과 같은 작업을 위한 고수준 API 집합을 제공합니다:

또한, 라이브러리와 프레임워크 개발자가 다음과 같은 작업을 할 수 있도록 하는 저수준 API가 있습니다:

Availability: not WASI.

This module does not work or is not available on WebAssembly. See WebAssembly platforms for more information.

asyncio REPL

You can experiment with an asyncio concurrent context in the REPL:

$ python -m asyncio
asyncio REPL ...
Use "await" directly instead of "asyncio.run()".
Type "help", "copyright", "credits" or "license" for more information.
>>> import asyncio
>>> await asyncio.sleep(10, result='hello')
'hello'

Raises an auditing event cpython.run_stdin with no arguments.

버전 3.12.5에서 변경: (also 3.11.10, 3.10.15, 3.9.20, and 3.8.20) Emits audit events.

버전 3.13에서 변경: Uses PyREPL if possible, in which case PYTHONSTARTUP is also executed. Emits audit events.

레퍼런스

참고

asyncio의 소스 코드는 Lib/asyncio/에서 찾을 수 있습니다.