通过参数传递asyncio循环或使用默认asyncio循环

2024-09-30 20:19:16 发布

您现在位置:Python中文网/ 问答频道 /正文

我在我的应用程序中使用了asyncio,但我有点搞不清如何将事件循环作为参数传递。在

使用事件循环编写函数/方法时有三种可能:

  • 将asyncio事件循环作为参数传递
  • 不要将参数用于事件循环并使用asyncio.get_event_loop()
  • 事件循环作为参数传递是可选的。如果未通过,请使用asyncio.get_event_loop()

最后一种情况似乎大部分时间都在使用,但即使在asynciapi中,用法也不一致。由于我没有缩进来使用两个独立的事件循环,在需要的地方使用asyncio.get_event_loop()有什么反对的呢?在

最好的办法是什么?在


Tags: 方法函数loopeventasyncio应用程序用法参数
1条回答
网友
1楼 · 发布于 2024-09-30 20:19:16

一篇很好的(正如GuidoVanRossum称赞的)博客文章是Some thoughts on asynchronous API design in a post-async/await world。python核心开发人员的后续讨论here。在

TLDR

如果您只使用一个事件循环,这无关紧要。在

如果您正在管理多个循环,并且python>;=3.6这基本上无关紧要:不要使用参数,在需要的地方使用asyncio.get_event_loop(),它会给您正确的循环。在

相关问题 更多 >