以下代码只是挂起而没有打印任何东西:
import asyncio async def foo(loop): print('foo') loop.stop() loop = asyncio.new_event_loop() asyncio.ensure_future(foo(loop)) loop.run_forever()
如果我使用get_event_loop一切正常.有什么我做错了或我偶然发现了一个错误?
我正在使用Python 3.5.1.
asyncio.AbstractEventLoopPolicy.new_event_loop
文件说:
如果需要将此循环设置为当前上下文的事件循环,则
set_event_loop()
必须显式调用.
import asyncio async def foo(loop): print('foo') loop.stop() loop = asyncio.new_event_loop() asyncio.set_event_loop(loop) # <---- asyncio.ensure_future(foo(loop)) loop.run_forever()