首页 > 解决方案 > 标准库中等待对象的 Python 列表

问题描述

我正在学习 Python 异步/等待。

这里我得到了一个使用 async/await 的 Python 模块/库的列表。这些都是为您提供“等待”对象的库。

但它们似乎都是第 3 方库,即:不是标准 Python 库的一部分。

我知道的标准库中唯一可以等待的例子是 asyncio.sleep()。

但是这些第 3 方库必须有其他调用吗?还是它们都直接针对一些较低级别的 C 库实现?

这是否意味着没有用于异步文件 IO 的标准库?还是异步网络?

这感觉就像标准库中应该包含的东西,不是吗?(主观问题,我知道)是否有计划为基本文件 IO 和网络创建/合并/包含/...标准库到 Python 基本发行版中?

编辑:我已经回答了我自己的问题(询问后 1 分钟......)。但我仍然不知道这是否是所有这些 3rd 方库都在使用的。或者如果他们直接进入较低级别的 C 代码?或者:如果这些是我们可以在 Python 中执行的唯一异步调用(atm)?

标签: pythonasync-awaitpython-asyncio

解决方案


呃,就在你放弃的时候,你看到它就在你的眼皮底下:

https://docs.python.org/3/library/asyncio-llapi-index.html

很多东西,比如:

  • await loop.create_connection() 打开一个 TCP 连接。
  • loop.add_writer() 开始观察文件描述符的写入可用性。

推荐阅读