Duplicate of How to prevent a block of code from being interrupted by KeyboardInterrupt in Python?
目的:
问题:
你知道吗
我的设计的通用实现:
import threading, signal
def huphandler(signum, frame):
with sig_lock:
os._exit(0)
def loop():
print 'in lock'
time.sleep(5)
def idle_loop():
while True:
with sig_lock:
t = multiprocessing.Process(target=loop)
t.start()
t.join()
print 'out lock'
time.sleep(5)
sig_lock = threading.Lock()
signal.signal(signal.SIGHUP, huphandler)
idle_loop()
1.1。问题:
1.2。解决方案:
2.1。问题:
time.sleep
)。你知道吗2.2。解决方案:
你知道吗
提供所需结果的通用实现:
如果用获得的锁终止,那么程序将处于死锁状态。你知道吗
因为您刚刚终止了持有锁的线程或子进程,所以它无法再释放它。然后您的主线程或任何其他线程将尝试获取锁,并阻塞直到锁可用。因此,以僵局告终。你知道吗
相关问题 更多 >
编程相关推荐