循環線程錯誤的原因
g模塊來實現的。在使用線程的時候,一定要注意線程的結束,否則會出現循環線程的錯誤。循環線程的錯誤是指線程在執行完畢后,沒有結束,而是一直循環執行,造成程序的死循環。
循環線程錯誤的解決方法
()方法中加上結束線程的語句即可。具體方法如下
tttt對象處于非激活狀態時,線程就會進入等待狀態。
t對象的例子
portgporte
g.Thread)itt)git__(self)tt
(self)ott.is_set()tning...")e.sleep(1)t("Thread is stopped...")
ameain__"t對象tgt()
創建線程t)
啟動線程
t.start()
等待5秒鐘e.sleep(5)t對象為激活狀態t.set()
等待線程結束()
2.使用Flag對象
中另一個非常實用的對象,它可以用來控制線程的開關。在使用Flag對象的時候,需要在線程中判斷Flag對象的狀態,當Flag對象的值為True時,線程就會進入等待狀態。
下面是一個使用Flag對象的例子
portgporte
g.Thread)it__(self, flag)git__(self)
self.flag = flag
(self)ot self.flagtning...")e.sleep(1)t("Thread is stopped...")
ameain__"
創建Flag對象
flag = False
創建線程
t = MyThread(flag)
啟動線程
t.start()
等待5秒鐘e.sleep(5)
設置Flag對象為True
flag = True
等待線程結束()
循環線程錯誤的問題。在使用線程的時候,一定要注意線程的結束,否則會出現循環線程的錯誤。