asyncio — Asynchronous I/O


asyncio es una biblioteca para escribir código concurrente utilizando la sintaxis async/await.

asyncio es utilizado como base en múltiples frameworks asíncronos de Python y provee un alto rendimiento en redes y servidores web, bibliotecas de conexión de base de datos, colas de tareas distribuidas, etc.

asyncio suele encajar perfectamente para operaciones con límite de E/S y código de red estructurado de alto nivel.

asyncio provee un conjunto de APIs de alto nivel para:

Adicionalmente, existen APIs de bajo nivel para desarrolladores de bibliotecas y frameworks para:

Availability: not Emscripten, not WASI.

Este módulo no funciona o no está disponible para plataformas WebAssembly wasm32-emscripten y wasm32-wasi. Consulte Plataformas WebAssembly para más información.

asyncio REPL

Puedes experimentar con un contexto concurrente de asyncio en el 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.

Distinto en la versión 3.12.5: (also 3.11.10, 3.10.15, 3.9.20, and 3.8.20) Emits audit events.

Referencias

Nota

El código fuente para asyncio puede encontrarse en Lib/asyncio/.