Python Glossary English

Python 3.4+Асинхронное программированиефункция

asyncio.get_event_loop()

event loop

Возвращает текущий цикл событий: внутри корутины — работающий, вне её — установленный для потока. В async-коде лучше get_running_loop().

Синтаксис

loop = asyncio.get_event_loop()

Самая изменчивая функция asyncio. До 3.10 она тихо создавала цикл, если его не было; в 3.10–3.13 такое создание сопровождалось DeprecationWarning, а с 3.14 без установленного цикла она бросает RuntimeError. Поэтому старые рецепты loop = asyncio.get_event_loop(); loop.run_until_complete(...) больше не работают — их заменяет asyncio.run(). Внутри корутины она эквивалентна get_running_loop().

Примеры

import asyncio
async def main():
    print(asyncio.get_event_loop() is asyncio.get_running_loop())  # → True
asyncio.run(main())  # вместо get_event_loop().run_until_complete(main())

См. также

Частые ошибки

Открыть в полном глоссарииdocs.python.orgСообщить о неточности