0
私はユーザーの中断後にスレッドを停止することを検討していましたが、何らかの理由でそれが機能しません。誰も助けることができます。問題は、プログラムがキーボード割り込みエラーを無視するだけで、キーボード割り込み後にはシャットダウンしないということです。threading.event関数を使用してスレッドを削除するにはどうすればよいですか?
#!/usr/bin/env python
#
#
from time import sleep
from Queue import Queue
from threading import Thread,Event,Lock
def Count():
global Exit
for i in range(5):
try:
if not Exit.is_set():
with l:
print i;sleep(2)
except KeyboardInterrupt:
Exit.set()
if __name__ == '__main__':
l = Lock()
q = Queue()
Exit = Event()
for i in range(2):
Bot = Thread(target=(Count)).start()
q.put(Bot)
#q.join()
#OutPut
0
1
^C2
3
4
0
Exception KeyboardInterrupt in <module 'threading' from '/usr/lib/python2.7/threading.pyc'> ignored
あなたはエラーと予想される動作が何であるかを共有することはできますか? – Fejs