понимание Asyncio уже работает вечно цикл и отложенные задачи
У меня проблемы с пониманием того, как перенести новую задачу в уже запущенный цикл обработки событий.
Этот код:
import asyncio
import logging
@asyncio.coroutine
def blocking(cmd):
while True:
logging.info("in blocking coroutine")
yield from asyncio.sleep(0.01)
print("ping")
def main():
logging.info("in main funciton")
loop = asyncio.get_event_loop()
logging.info("new loop created")
logging.info("loop running forever")
loop.run_forever()
asyncio.async(blocking("ls"))
logging.basicConfig(level = logging.INFO)
main()
измененияrun_forever()
вrun_until_complete(asyncio.async(blocking("ls"))
работает отлично. Но я действительно растерялся - почему я не могу выполнить задачу в уже запущенном цикле?