twisted 源码分析一:reactor 单例

一个twisted进程只会有一个reactor反应器,下面我们来看看twisted是怎样实现这个单例反应器的,

路径:twisted\internet\reactor.py

主要代码如下:

import sys
del sys.modules['twisted.internet.reactor'] #删除已经加载的reactor模块
from twisted.internet import default #重新安装reactor模块,其实是加载twisted.internet.selectreactor
default.install() 进行安装

这样就保证reactor只有一个实例

具体reactor实例原理非常的复杂,涉及多个基类方法调用,在后续章节再探讨。

posted @ 2013-07-09 17:32  践道者  阅读(871)  评论(0编辑  收藏  举报