我有一个使用套接字,数据库连接之类的过程。从根本上讲,这是一个服务器过程,在传感器数据和Web界面之间进行中继,因此确保应用程序(如果被终止)正常终止很重要。
如何处理诸如segfaults(至少用于调试)之类的意外异常以及kill信号,以便我可以关闭任何连接并停止任何线程的运行,从而使进程不会留下任何正在使用的东西?
您可以安装信号处理程序来捕获信号-但是在99%的情况下,您只想退出并让Linux OS进行清理-它会很乐意关闭所有文件,套接字,可用内存和关闭线程。
因此,除非您有具体想做的事情,例如在套接字上发送消息,否则您应该退出该过程,而不要尝试捕获信号。