PyPy 的当前版本(撰写本文时为 7.2.0 版)至少在 Linux 和 Windows 上支持 asyncio。
旧的,现在已过时(截至 2019 年 10 月 20 日)注意事项:
目前有一个兼容 Python 3.5 的 PyPy 版本 (v7.0) 和一个兼容 Python 3.6 的 beta 版本 (v7.1.1)。两个版本都支持 Linux 上的 asyncio(可能还有 macOS,但我自己没试过),但只有后者支持 Windows 上的 asyncio。
旧的,现在已过时(截至 2019 年 4 月 16 日)注意事项:
目前 PyPy 支持 Python 3.5,所以 asyncio 应该可以正常工作。然而,Windows 上的 Python 3.x 仍然是 beta 质量的。不幸的是,目前在 Windows 上运行 asyncio 所需的重叠 IO 扩展模块尚未实现。
旧的,现在已过时(截至 2018 年 6 月 10 日)注意事项:
目前 PyPy 支持 Python 3.5。请注意,PyPy 的 Python 3 支持目前只是测试版质量。我们正在不断努力改进它。不过,它还没有准备好生产。大多数涉及asyncio 的代码应该可以正常工作。如果没有,请check the open bug reports 或create a new one 或在 cmets 中告诉我。
旧的,现在已过时(截至 2017 年 8 月 18 日)注意事项:
目前 PyPy 支持 Python 3.3。这意味着您可以在 PyPy3.3 上install asyncio。请注意,PyPy 的 3.3 支持目前只是 alpha / beta 质量。不过,我们正积极致力于提高性能和与 CPython 的兼容性。
async / await 功能已在 Python 3.5 中添加。我们开始了一个非常实验性的分支,支持 Python 3.5,但还有很长的路要走。幸运的是,我们目前有一名 GSoC 学生正在研究它,但仍可能需要几年时间(取决于我们收到多少捐款和志愿者工作)。
编辑 1:以前缺少运行 asyncio 的功能。它是在此编辑之前不久实施的。答案已相应编辑。
编辑 2:我们刚刚发布了 PyPy3.3 的 alpha 版本。我们不建议任何人尝试仅支持 Python 3.2 的旧 PyPy3 版本。这就是我重写大部分答案的原因。
旧的,现在已过时(截至 2016 年 5 月 30 日)注意事项:
网站上的 PyPy3 版本非常旧,只实现了 Python 3.2 - 我们已经有一年半多没有发布了。由于 Python 3.2 缺少 yield from 功能,因此 asyncio 无法在此版本中使用。