我看到了这样的情况:http://yukelzon.blogspot.com/2005/07/python-locks.html在寻找一个解决方案,在写入文件时向现有代码添加一些锁定。在
我需要的简化版本如下所示:
def mlock(orig):
def inner(*args, **kwargs):
Coloring.lock.acquire()
try:
ret = orig(*args, **kwargs)
return ret
finally:
Coloring.lock.release()
return inner
锁是一个类变量。有人能想出改进或更好的办法吗?在
如果您使用的是Python 2.6+(我认为),互斥对象是上下文管理器,因此:
我不喜欢自由变量。我可能会将锁作为decorator的显式变量,如下所示:
好吧,既然
^{pr2}$Coloring
是一个类变量,并且如果您希望它对该类非常特定,那么显式地访问它:或者,至少声明锁是全局的
相关问题 更多 >
编程相关推荐