Как организовать фоновое выполнение задачи с помощью asyncio?
Запустить корутину в фоновом режиме можно, обернув её в объект asyncio.Task.
Чтобы это сделать — надо вызвать функцию asyncio.create_task() и передать ей корутину.
Корутина будет обёрнута в объект Task, после чего она будет запланирована на выполнение. Функция create_task() вернёт объект задачи, при этом работа вызывающей стороны не будет приостановлена.
Задача не начнёт выполняться до тех пор, пока не будет приостановлена текущая корутина.
Мы можем поспособствовать запуску задачи, приостановив на некоторое время работу текущей корутины. Это позволит задаче начать выполняться.
Сделать это можно, заставив корутину «заснуть» на 0 секунд:
Отметьте свой прогресс