我基本上想做这样的事情:
future_started = asyncio.Event()
async def my_future():
future_started.set()
await asyncio.sleep(0)
[...]
async def start_my_future():
"""Starts my_future() and only returns, after my_future() has been started."""
asyncio.ensure_future(my_future())
await future_started.wait()
return
有没有一种更习惯的方式来安排未来,但要确保它已经开始,然后再继续?
编辑:我可能应该补充一点,我运行的是Python 3.6,因为后来对asyncio
做了很多更改。
使用asyncio.create_task
而不是asyncio.ensure_future
将启动它。