# demo.py
import asyncio, time
# asyncio.wait() 等待執行完成
async def foo():
await asyncio.sleep(2)
return 50
async def main():
task = asyncio.Task(foo())
# 執行其他任務
print('看看會不會提前出現...')
done, pending = await asyncio.wait({task}) # 啓動協程 並創建一個等待對象
# 手動在這裏等待
print(pending)
if task in done: # 當task出現在done中時,說明任務已經完成,可以退出
print(task)
# 問題:如果我們想想nodejs 那樣 任務再一開始就被執行,如果它是耗時操作,但它不會影響後面代碼的執行?
if __name__=="__main__":
loop = asyncio.get_event_loop()
loop.run_until_complete(main())
loop.close()