WorkerThread 设计
具体细节
threading.local
local
的用法:
- 可以通过设置简单
threading.local
,并设置相应的LocalManager
来管理local - 还可以继承自
local class
, 这种方法可以很有效的实现local的默认值, 方法, 初始化. 注意如果定义了__init__
函数, 将会在每个特定的线程中进行__init__
函数的调用,这对于初始化每一个线程的字典来说非常的重要 threading.local()
:类表示线程本地变量. 线程本地变量对于特定的线程不同. 管理线程本地变量threading.local
, 如mydata = threading.local() mydata.x = 1
继承自threading.local
的用法如下(具体见官方源码):
class MyLocal(local):
number = 2
initialized = False
def __init__(self, **kw):
if self.initialized:
raise SystemError('__init__ called two many times')
self.initialized =