python asyncio сопрограмма никогда не ожидалась - PullRequest
0 голосов
/ 23 марта 2020

Я использую python 3.8 с этим кодом

async def main():
    pass

async def build():
    pass

asyncio.create_task(build())
loop = asyncio.get_event_loop()
asyncio.create_task(main())
pending = asyncio.all_tasks()
loop.run_until_complete(asyncio.gather(*pending))

и получаю следующую ошибку

sys: 1: RuntimeWarning: сопрограмма 'build' никогда не ожидалась

Что мне здесь не хватает? не должен запускаться до завершения, дождаться завершения всех задач sh?

1 Ответ

0 голосов
/ 23 марта 2020

Поскольку l oop не запускается при создании задачи, asyncio не может присоединить к ней задачи.

Это можно исправить, заменив asyncio.create_task() на loop.create_task().

Полная ошибка может быть найдена с помощью asyncio.gather(..., return_exceptions=True), поэтому gather() вызовет RuntimeError: no running event loop.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...