终端窗口关闭在Python的Python中的事件处理程序

时间:2011-09-06 11:02:58

标签: python linux signals

我的Python程序在ubuntu终端窗口中运行。如果终端窗口直接关闭,则需要发生事件,在那种情况下,我将向服务器发送一条消息,退出该应用程序。我试过以下内容并没有用。

def window_handler(self):
   CommandExecutor.processCommands(0, ProjectConstants.EXIT)             

signal.signal(signal.SIGTERM, window_handler) 

我也尝试过其他信号......我怎么能实现这个目标?提前谢谢......

1 个答案:

答案 0 :(得分:0)

关闭终端会将SIGHUP发送给具有该终端的伪tty作为其控制终端的进程。

因此,抓住SIGHUP代替SIGTERM应该有效。

我不确定在处理Python中的信号时是否需要考虑一些特殊注意事项,但这是另一个问题的主题。 :)