ฉันกำลังทดสอบ Python threading ด้วยสคริปต์ต่อไปนี้:
import threading
class FirstThread (threading.Thread):
def run (self):
while True:
print 'first'
class SecondThread (threading.Thread):
def run (self):
while True:
print 'second'
FirstThread().start()
SecondThread().start()
สิ่งนี้กำลังทำงานใน Python 2.7 บน Kubuntu 11.10 Ctrl+ Cจะไม่ฆ่ามัน ฉันลองเพิ่มตัวจัดการสำหรับสัญญาณระบบด้วย แต่ไม่ได้ช่วยอะไร:
import signal
import sys
def signal_handler(signal, frame):
sys.exit(0)
signal.signal(signal.SIGINT, signal_handler)
ในการฆ่ากระบวนการฉันกำลังฆ่ามันโดย PID หลังจากส่งโปรแกรมไปที่พื้นหลังด้วยCtrl+ Zซึ่งจะไม่ถูกละเลย ทำไมCtrl+ ถึงCถูกเพิกเฉยอย่างต่อเนื่อง? ฉันจะแก้ไขปัญหานี้ได้อย่างไร