-1
我需要做的是一次又一次地向一個以上的設備運行一組相同的命令。但我需要同時做到這一點。在將該組命令發送到其他設備之前的1-3秒間隔是好的。所以我想使用線程。Python中的線程無法正常工作
下面是代碼的用法。
class UseThread(threading.Thread):
def __init__(self, devID):
super(UseThread, self).__init__()
... other commands ....
... other commands ....
... other commands ....
file = open(os.path.dirname(os.path.realpath(__file__)) + '\Samples.txt','r')
while 1:
line = file.readline()
if not line:
print 'Done!'
break
for Code in cp.options('code'):
line = cp.get('product',Code)
line = line.split(',')
for devID in line:
t=UseThread(devID)
t.start()
它能夠跨所有設備一審運行並記錄結果,但對於第二個試驗中,它在那裏說:「老孫命令:喚醒」代碼某處掛
什麼是錯的與使它表現這種方式的線程?
你怎麼調用線程?你的線程代碼應該在函數run(self)中:' – vikki 2013-02-12 07:35:58
閱讀一些關於Python線程模塊的教程。你還沒有掌握基本知識。 – 2013-02-12 07:39:35
@vikki像這樣。 t = UseThread(devID)t.start()。線程代碼在useThread類本身內部(並且它包含很多方法)。所以你的意思是我所做的是錯誤的? – 2013-02-12 07:40:29