asyncio — Asynkron I/O


asyncio är ett bibliotek för att skriva samtidig kod med hjälp av syntaxen async/await.

asyncio används som en grund för flera asynkrona Python-ramverk som ger högpresterande nätverks- och webbservrar, databasanslutningsbibliotek, distribuerade uppgiftsköer etc.

asyncio passar ofta perfekt för IO-bunden och högnivå strukturerad nätverkskod.

Se även

En konceptuell översikt av asyncio

Förklaring av grunderna i asyncio.

asyncio tillhandahåller en uppsättning högnivå API:er för att:

Dessutom finns det API:er på lågnivå som biblioteks- och ramverksutvecklare kan använda:

Tillgänglighet: not WASI.

Den här modulen fungerar inte eller är inte tillgänglig på WebAssembly. Se WebAssembly-plattformar för mer information.

asyncio REPL

Du kan experimentera med en asyncio samtidig kontext i 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'

Utlöser en auditing event cpython.run_stdin utan argument.

Ändrad i version 3.12.5: (även 3.11.10, 3.10.15, 3.9.20 och 3.8.20) Ger upphov till granskningshändelser.

Ändrad i version 3.13: Använder PyREPL om möjligt, i vilket fall PYTHONSTARTUP också körs. Ger upphov till granskningshändelser.

Referens

Anteckning

Källkoden för asyncio finns i Lib/asyncio/.