一般创建协程过程:
tasks = [
asyncio.ensure_future( func10 ),
asyncio.ensure_future( func20)
]
1oop = asyncio.get_event_loop()
loop.run_unti1_complete(asyncio.wait(tasks))
或者
import asyncio
async def fun():
pass
result = fun() #内部代码不被执行 只是返回协程对象
#loop = asyncio.get_event_loop()
#loop.run_until_complete( result )#将内部代码交给事件循环执行
asyncio.run( result )
但是总会时不时的报RuntimeError: Event loop is closed
经过摸索和博客文查看
有效方法是将
asyncio.run( result )
或
1oop = asyncio.get_event_loop()
loop.run_unti1_complete(asyncio.wait(tasks))
改为:
loop = asyncio.get_event_loop()
loop.run_until_complete(协程主函数名())
如下:
分割线-------------------------------------------------------------------------------------------------------------
没有异常报错