安装及要求#

备注

如果您正在 Python Package Index (皮皮,https://pypi.org/),它特定于您正在查看的gevent版本。如果您在上查看此文档gevent.org网站,表示源代码管理(git master)中gevent的当前状态。

支持的平台#

此版本的GEvent可在Python3.8及更高版本上运行(有关测试版本的确切详细信息,请参阅PyPI页面或中的分类器 setup.py )。GEvent需要 greenlet 库,并将安装 cffi Windows上默认情况下为库。在未来的GEvent版本中,CFFI库将成为所有平台上的默认库。

这个版本的GEvent也在PyPy 3.10(7.3.12)上进行了测试;它应该可以在PyPy 3.9和更高版本上运行。在PyPy上,没有外部依赖项。

gevent在Windows、MacOS和Linux上进行测试,并应在大多数其他类似于Unix的操作系统(例如FreeBSD、Solaris等)上运行。

备注

Windows被支持为第二层的“尽力而为”平台。适合开发,但不推荐用于生产。特别是,Windows上的PyPy3可能会出现问题,尤其是子进程。

在使用不推荐使用的libev后端的Windows上,由于 limitations in libev . 默认libuv后端不应存在此限制。

python的旧版本#

旧版本的python 2或python 3的用户可以安装旧版本的gevent。请注意,通常不支持这些版本。

Python 版本

GEvent版本

2.5

1.0.x

2.6

1.1.x

<=2.7.8

1.2.x

3.3

1.2.x

3.4.0-3.4.2

1.3.x

3.4.3

1.4.x

3.5.x

20.9.0

2.7.9-2.7.18、3.6、3.7

22.10

安装#

备注

本节是关于安装发布版本的gevent,如 Python Package Index . 有关从源代码构建gevent,包括自定义构建库和嵌入库,请参见 Installing From Source .

Gevent和Greenlet都可以安装 pip ,例如, pip install gevent . 安装使用 buildout 也支持。

在Windows、MacOS和Linux上,gevent和greenlet都以二进制形式分发 wheels .

小技巧

您需要PIP8.0或更高版本,或Buildout 2.10.0来在Windows或MacOS上安装二进制机轮。在Linux上,您需要 pip 19 安装Manylinux2010车轮。

小技巧

虽然x86-64二进制文件被认为是产品质量,但它们的构建具有相对较低的优化级别,并且没有特定于硬件的优化。我们鼓励严肃的生产用户使用适当的编译器标志从源代码进行安装。

小技巧

从gevent 20.12.0开始,64位ARM二进制文件在PyPI上发布,适用于aarch64 manylinux2014兼容系统。安装这些软件需要最新版本的 pip 。这些轮子 请勿 包含C-ARES解析器,没有经过测试,并且是以非常低的优化级别构建的。鼓励在64位ARM系统上使用gevent的严肃生产用户构建他们自己的双轮。

从GEvent 22.10.0开始,ppc64le二进制文件在PyPI上分发。同样的注意事项也适用于64位ARM二进制文件。不鼓励将它们用于当地发展以外的任何事情。

从GEvent 23开始,Muslinux aarch64和S390X二进制文件在PyPI上分发。同样的注意事项也适用于64位ARM二进制文件。不鼓励将它们用于当地发展以外的任何事情。

从源安装#

如果无法使用二进制车轮(对于没有预构建车轮可用或车轮安装被禁用的平台),则可以从源代码构建gevent。正常的 pip install 如果没有可用的二进制车轮,将返回执行此操作。见 Installing From Source 更多信息,包括常见的安装问题。

额外依赖项#

有许多附加的库扩展了gevent的功能,如果它们可用,它们将被使用。所有这些都可以使用 setuptools extras 如下文所述,例如: pip install gevent[events] .

事件

在gevent到20.5.0(包括20.5.0)的版本中,使用 zope.event 并被强烈推荐。

在之后的版本中,这个额外的是空的,什么也不做。它将在gevent 21.0中删除。

dnspython公司

启用纯Python解析器,由 dnspython 。在Python 2上,这还包括 idna 。它们可以与 dnspython 额外的。

备注

这与Python3.10+或dnspython2不兼容。

班长

增强了Gevent的自我监控能力。这包括 psutil 用于监视内存使用情况的库。(请注意,这可能不会建立在所有平台上。)

推荐

将建议的附加组件安装在一起的快捷方式。这包括这里定义的非测试附加组件,以及用于改进gEvent在某些平台上的操作的附加组件(例如,在过去,它包含了较新API的后端口)。

测试

运行完整的gevent测试套件所需的一切。