Терминал закрытия окна обработчика событий в Python для Linux - PullRequest
1 голос
/ 06 сентября 2011

Моя Python-программа работает в окне терминала Ubuntu. Если окно терминала закрыто напрямую, требуется событие, и в этом случае я отправлю сообщение серверу, что приложение закрыто.Я пробовал со следующим, и это не работает.

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

signal.signal(signal.SIGTERM, window_handler) 

Я пробовал и другие сигналы тоже ... Как я могу добиться этого?Заранее спасибо ...

1 Ответ

0 голосов
/ 06 сентября 2011

Закрытие терминала отправит SIGHUP процессам, которые имеют псевдо-tty этого терминала в качестве управляющего терминала.

Таким образом, перехват SIGHUP вместо SIGTERM должен работать.

Я не уверен, есть ли какие-то особые соображения, которые необходимо учитывать при обработке сигналов в Python, но это тема для другого вопроса. :)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...