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

标签 python shell python-3.x signals

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 被操作系统接收,因此不能被拦截。

关于python - 在 Py3k 中,我如何让信号处理程序阻止信号的默认操作?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13324064/

相关文章:

python - Scikit 学习高斯 HMM : ValueError: startprob must sum to 1. 0

python - 将 QStringList (PyQt) 转换为普通的 python 列表

bash - 如何使 bash tab 补全表现得像 vim tab 补全并循环匹配匹配项?

linux - 循环遍历具有相同名称但扩展名不同的文件的 Shell 脚本

python - 刻度线在颜色条上显示不正确

Python Numpy Loadtxt - 转换 unix 时间戳

python - 使用 group by 获取 n 个最小值但有重复项

linux - 需要使用 unix 脚本移动具有文件路径的目录中的文件名

python - 如果一列大于另一列则删除行

python - 仅在满足 if 条件后才运行 for 循环