import threading
import time
def worker(i):
while True:
try:
print i
time.sleep(10)
break
except Exception, msg:
print msg
threads = []
for i in range(10):
t1 = threading.Thread(target=worker, args=(i,))
threads.append(t1)
for t in threads:
t.start()
print "started all threads... waiting to be finished"
for t in threads:
t.join()
如果我在線程運行時按^ C,線程是否獲取了SIGINT?
如果這是真的,我可以從調用者線程做些什麼來阻止它將SIGINT傳播到正在運行的線程?Python:阻止信號傳播到子線程
調用者線程中的信號處理程序會阻止它嗎?
還是我需要每個線程的信號處理程序?
好嗎?..這與信號有什麼關係? – ealeon
我想明確加入他們。 – ealeon
如果子線程繼承了信號處理程序,每個線程都會嘗試加入線程(列表)?對於線程中的t:t.join()是一次或所有線程調用的塊嗎? – ealeon