信号处理究竟意味着什么?

时间:2013-05-03 15:52:43

标签: python python-2.7 signals

什么是信号处理?编程语境中的信号是什么意思?它是否像硬件中的中断,例如计时器?

有人能用Python给我一个例子吗?

1 个答案:

答案 0 :(得分:0)

信号通常与它听起来完全一样 - 它是传递给流程的消息。大多数情况下,当人们说“信号”时,他们指的是发送到进程触发事件的软件中断。

将其视为进程之间的消息传递 - 这是否意味着将中止线程/运行关闭方法等。

请参阅:http://docs.python.org/2/library/signal.html以获取示例:

import signal, os

def handler(signum, frame):
    print 'Signal handler called with signal', signum
    raise IOError("Couldn't open device!")

# Set the signal handler and a 5-second alarm
signal.signal(signal.SIGALRM, handler)
signal.alarm(5)

# This open() may hang indefinitely
fd = os.open('/dev/ttyS0', os.O_RDWR)

signal.alarm(0)          # Disable the alarm