我们知道,在Linux-Unix的世界里,我们可以在终端中用ctrl+C来中断前台运行的程序并结束程序。
在 C++ 中我如何知道第三方破坏或强制终止 ( kill -9) 程序?
我必须经常用线程检查某些东西吗?当程序被破坏时,我必须在程序中返回退出状态 130,当程序被终止时,我必须返回退出状态 140。
通过发送的一些信号kill()可以被捕获和处理。有些不能(就像结果SIGKILL一样kill -9)。您的程序只是被内核终止并清理 - 它没有任何机会注意到发生了什么或以任何方式对其做出反应。从程序的角度来看,这相当于用户从计算机上拔掉电源 - 程序就像头部中弹一样死掉了。