如何在python 3.5.2中使用聚集

如何在python 3.5.2中使用聚集,python,async-await,Python,Async Await,我试图学习python中的asnychron编程是如何工作的,并编写了一个小型tornado应用程序,它使用sleep命令执行两个asnyc循环。 如果我使用两个wait命令等待两个协同路由,它的行为将与预期的一样(第一个循环,而不是执行第二个循环) 如果我将这两个协程与gather相结合,则不会发生任何事情。(没有错误,没有打印输出,webrequest永远不会完成。) 我不明白*await-gather(coros,return\u exceptions=True)发生了什么 gather使

我试图学习python中的asnychron编程是如何工作的,并编写了一个小型tornado应用程序,它使用sleep命令执行两个asnyc循环。 如果我使用两个wait命令等待两个协同路由,它的行为将与预期的一样(第一个循环,而不是执行第二个循环) 如果我将这两个协程与gather相结合,则不会发生任何事情。(没有错误,没有打印输出,webrequest永远不会完成。)

我不明白*await-gather(coros,return\u exceptions=True)发生了什么


gather
使用异步IO事件循环。如果希望将asyncio与tornado混合使用,则需要安装tornado的asyncio事件循环:

将此项添加到导入中:

from tornado.platform.asyncio import AsyncIOMainLoop
删除此项:

import tornado.platform.asyncio
并在导入之后添加此行:

AsyncIOMainLoop().install()

gather
使用异步IO事件循环。如果希望将asyncio与tornado混合使用,则需要安装tornado的asyncio事件循环:

将此项添加到导入中:

from tornado.platform.asyncio import AsyncIOMainLoop
删除此项:

import tornado.platform.asyncio
并在导入之后添加此行:

AsyncIOMainLoop().install()