asyncio.sleep не усыпляет мой цикл? - PullRequest
0 голосов
/ 06 апреля 2019

Мне нужна была задача, которая выполнялась бы каждый день, и поскольку для этого конкретного бота я использую discord.py, я нахожусь на 3.6 и у меня есть много вещей on_message и on_reaction, которые я не хочу останавливать, поэтому я не использую time.sleep (). Кто-то предложил мне использовать asyncio.sleep с циклом, потому что я действительно не хотел использовать многопоточность. Я попытался поиграть с ним, чтобы увидеть, как он работает, и сделал простой маленький цикл. Проблема в том, что, хотя я пытаюсь уложить его в сон, он все равно дает отпечатки (фото предоставлено) ! http://prntscr.com/n8ar0u

Вот что я написал:

async def daily_task():
    i = 1
    while i==1:
        print('I am here to steal your women')
        asyncio.sleep(300000000000)


asyncio.get_event_loop().run_until_complete(daily_task())

1 Ответ

1 голос
/ 06 апреля 2019

Вам нужно await sleep:)

await asyncio.sleep(..)

Пожалуйста, смотрите asyncio.sleep использование

...