gevent.core -(已弃用)事件循环抽象#

已弃用;这并不反映所有可能的选项,其界面各不相同。

在 1.3a2 版本发生变更: 已弃用。

这个模块最初是一个包装器 libev 并密切关注libev api。既然我们支持libuv,它也可以充当事件循环抽象层。大多数人不需要直接使用这个模块中定义的对象。如果需要创建观察程序对象,则应使用在当前事件循环上定义的方法。

请注意,gevent为用户透明地创建一个事件循环,并在一个专用的greenlet(称为hub)中运行它,因此不需要使用此模块。事实上,如果您确实使用它,很可能您的程序在不同的gevent版本中不兼容(0.x中的gevent.core有完全不同的接口,2.x可能还有另一个接口)和实现(libev、libev cffi和libuv实现都有不同本模块中的ent内容)。

小心

永远不要实例化在这个模块中定义的观察程序类(如果在这个模块中定义了它们;各种事件循环实现对它们做了非常不同的事情)。总是使用 watcher methods definedthe current loop ,即 get_hub().loop .

在Windows上,这个包装器将接受Windows句柄,而不是libev需要的stdio文件描述符。这是为了简化与Python其余部分的交互,因为它需要Windows句柄。