5

(类似于这个问题

在 Python 2.7 下的 UNIX 上,在 Python 提示符处:

 >>> import signal
 >>> def handler(signal, frame):
 ...     print 'welcome to the handler'
 ...
 >>> signal.signal(signal.SIGINT, handler)
 <built-in function default_int_handler>

我按 ctrl-c

 >>> welcome to the handler

 >>>

在 Windows 上:

 >>> import signal
 >>> def handler(signal, frame):
 ...     print 'welcome to the handler'
 ...
 >>> signal.signal(signal.SIGINT, handler)
 <built-in function default_int_handler>

按 ctrl-c 后:

 >>>
 KeyboardInterrupt
 >>>

我可以验证handler正在安装 Python 端作为 SIGINT 的处理程序(调用signal.signal第二个计时器返回 my handler)。如何在 Windows 上捕获 SIGINT?

4

1 回答 1

8

在上游打开错误后,找到了问题的根本原因并编写了补丁。这个补丁不会进入 python 2.x 系列。

于 2013-06-01T19:18:09.050 回答