Python 中終止線程的方法有以下幾種:
import threading
def my_thread():
while not stop_flag:
# 線程執行的代碼
stop_flag = False
thread = threading.Thread(target=my_thread)
thread.start()
# 終止線程
stop_flag = True
thread.join()
import threading
def my_thread(event):
while not event.is_set():
# 線程執行的代碼
event = threading.Event()
thread = threading.Thread(target=my_thread, args=(event,))
thread.start()
# 終止線程
event.set()
thread.join()
import threading
def my_thread():
# 線程執行的代碼
thread = threading.Timer(0, my_thread)
thread.start()
# 終止線程
thread.cancel()
需要注意的是,以上方法在終止線程時都是通過設置某個標志位或者事件來通知線程退出,線程內部需要根據這些標志位或者事件的狀態來判斷是否繼續執行。實際上,Python 中的線程無法直接終止,只能通過設置標志位或者事件來間接實現終止線程的效果。