如何保证在进程退出或在c ++中被杀死时执行某些代码?

时间:2014-02-22 08:28:35

标签: c++ windows process

有人能告诉我如何确保我的程序中的某些代码在其进程退出或被杀死时执行吗?

驱逐舰只有在正常退出时才会被召唤。但是我希望我的代码在被系统关闭或任务管理器杀死时执行。

该平台是Windows,如果需要,我不介意使用特定于平台的代码。

3 个答案:

答案 0 :(得分:5)

你做不到。如果用户拔出电源线怎么办?

答案 1 :(得分:1)

task或从Windows Task Manager结束shutdown都会让进程有机会通过发送WM_CLOSE等可以使用的消息来优雅地关闭优雅地关闭你的过程。但是,根据@immibis的回答,有些情况无法保证。

答案 2 :(得分:1)

假设程序以或多或少的控制方式崩溃,或许atexit是最好的选择