【发布时间】:2013-07-04 13:45:56
【问题描述】:
我必须将内存中的数据写入文件以关闭我的控制台应用程序。如何检测控制台关闭事件?
【问题讨论】:
-
有没有机会得到这个答案?
标签: python python-2.7 windows-7-x64
我必须将内存中的数据写入文件以关闭我的控制台应用程序。如何检测控制台关闭事件?
【问题讨论】:
标签: python python-2.7 windows-7-x64
当终端关闭时,你的程序会得到一个 SIGHUP,它会默认杀死它。添加一个信号处理程序来处理 SIGHUP 做任何你想做的事情。如果你在控制台关闭后编写程序写入控制台,你也可能会得到 SIGPIPE,请妥善处理
【讨论】:
signal()只能用SIGABRT、SIGFPE、SIGILL、SIGINT、SIGSEGV或@987654328调用@.ValueError 将在任何其他情况下提出。”这意味着不可能在该平台上为SIGHUP 设置信号处理程序,至少在 Python 中是这样。
signal.SIGHUP 甚至都没有定义。