Skip to main content
 首页 » 编程设计

python之在 Py3k 中,我如何让信号处理程序阻止信号的默认操作

2025年05月04日15mq0036

在How can I add signal handlers to a shell written in Py3k/Python? ,我有一些信号处理程序,它们似乎在起作用,然后让默认操作通过。对于具体实例,如果我按下 control-Z,它将显示信号处理程序指定的消息,然后(不需要的)继续暂停进程。

我如何(如果可能的话)显示消息然后忽略信号?

请您参考如下方法:

您的按键可能会触发 SIGSTOP 而不是 SIGSTP。 在您的终端中运行 stty -a 以确定分配给 ctrl+z 的确切信号。

根据维基百科(可能还有手册页)SIGSTP and SIGSTOP are different . SIGSTP 被发送到进程,因此可以被拦截,而 SIGSTOP 被操作系统接收,因此不能被拦截。