为什么按Ctrl反斜杠会导致核心转储?

2024-05-14 07:35:09 发布

您现在位置:Python中文网/ 问答频道 /正文

当我在python应用程序(例如python shell)中时,按Ctrl\会导致

>>> Quit (core dumped)

为什么是这样,我怎么能避免呢? 当我偶然按下Ctrl\时,如果应用程序退出,会非常不方便。


Tags: core应用程序shellquitctrldumped
2条回答

CTRL-\是生成退出信号的Linux键。通常,该信号会导致程序终止并转储内核。这是UNIX和Linux的一个特性,与Python完全无关。(例如,尝试sleep 30,然后按CTRL-\

如果要禁用该功能,请使用stty命令。

在Python启动之前,从Linux命令行:

stty quit undef

python模块signal可以方便地处理这个问题。

import signal

# Intercept ctrl-c, ctrl-\ and ctrl-z
def signal_handler(signal, frame):
    pass
signal.signal(signal.SIGINT, signal_handler)
signal.signal(signal.SIGQUIT, signal_handler)
signal.signal(signal.SIGTSTP, signal_handler)

只需将处理程序添加到(在本例中)不执行任何操作的信号中。

相关问题 更多 >

    热门问题