Twisted 网络概述¶
Twisted 网络是 Python 中一系列兼容的事件循环的集合。它包含用于将事件分派给感兴趣的观察者的代码,以及一个可移植的 API,以便观察者无需关心正在运行哪个事件循环。因此,可以使用相同的代码用于不同的循环,从 Twisted 的基本但可移植的 select
-based 循环到各种 GUI 工具包(如 GTK+ 或 Tk)的循环。
Twisted 网络包含 Reactor API 的各种接口,其用法在低级章节中进行了说明。这些 API 是 IReactorCore
、 IReactorTCP
、 IReactorSSL
、 IReactorUNIX
、 IReactorUDP
、 IReactorTime
、 IReactorProcess
、 IReactorMulticast
和 IReactorThreads
。Reactor API 允许进行非持久性调用。
Twisted 网络还涵盖了各种传输的接口,在 ITransport
及其朋友中。这些接口允许编写 Twisted 网络代码,而无需考虑传输的底层实现。
IProtocolFactory
指示如何编写工厂,工厂通常是第三方代码的重要组成部分。