Задать вопрос
@Lepilov

Почему не полностью отрабатывает код?

Разбираюсь с asyncio, накидал простейший скрипт, но не могу понять почему не выполняется блок async def check2(). В каком месте не правильно ?

import asyncio

async def check1():
    print ("Start check1")
    await asyncio.sleep(1)
    print ("Check1 awake")
    
    
async def check2():
    print ("Start check2")
    await asyncio.sleep(1)
    print ("Check2 awake")
    
    
async def chain():
    print("Starting chain")
    p1 = await check1()
    p2 = await check2()
    print("Ending chain")
    
async def main():
    asyncio.gather(chain(), chain())
    
if __name__=="__main__":
    asyncio.get_event_loop().run_until_complete(main())


Вывод
Starting chain
Start check1
Starting chain
Start check1
  • Вопрос задан
  • 125 просмотров
Подписаться 2 Простой Комментировать
Помогут разобраться в теме Все курсы
  • Нетология
    Fullstack-разработчик на Python + нейросети
    20 месяцев
    Далее
  • Skillfactory
    Профессия Python-разработчик
    9 месяцев
    Далее
  • Яндекс Практикум
    Python-разработчик
    10 месяцев
    Далее
Решения вопроса 1
1tone
@1tone
Software developer
`asyncio.gather` надо вызвать с `await`
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

Похожие вопросы