两个失误促成了一个费解的现象,好在定位跟踪出来了
1.多线程中对加锁部分的代码,关闭了raise
如
lock()
try:
do()
except:
print errormsg
#raise
unlock()
这样虽然可以避免死锁的问题,但是一旦do()出了错,将不会发出任何信息,很难直接看到问题所在
2.python基类命名造成的问题
class base(object):
def __init__(self):
self.__VAl = None #--------------此处采用双下划线命名局部成员,期望在派生类中修改,实际上无法简单修改
class Child(base):
def __init(self):
super(Child, self) .__init__()
self.__VAl = "ABC" ####----------此处似乎能修改,但是修改失败,当在基类中调用时,并没有成功修改
阅读(330) | 评论(0) | 转发(0) |