@MaxBat

Как исправить ошибку асинхронности?

Запускаю параллельно две функции, которые обе используют объект bot.

КОД
async def background_func(bot):
    while True:
        if something: # тут определенные действия
            await bot.send_message(chat_id=1026404382, text=f"HELLO")
            await asyncio.sleep(20)


async def bot_startup(dp: Dispatcher):
    asyncio.create_task(background_func(bot))


if __name__ == "__main__":
    executor.start_polling(dp, skip_updates=True, on_startup=bot_startup)


Периодически (особо не отловил причину, но как правило, когда отправляешь боту несколько запросов подряд (а в это время (всегда) работает функция background_func), то возникает ошибка:

Ошибка
Task was destroyed but it is pending! 64be7b77bf152773038519.png


После ошибки background_func перестает работать, а бот продолжает успешно обрабатывать запросы.
  • Вопрос задан
  • 64 просмотра
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы