杀死过程时智能指针的行为



我正在使用std :: unique_ptr来管理一些内存。当我的过程正常退出时,这正常工作,因为我可以看到相关的构造函数和驱动器被调用。但是,当该过程被Sigterm杀死时,我看不到攻击响应者被召唤。当过程通过信号终止过程时,STD :: unique_ptr的预期行为是吗?有什么办法解决这个问题吗?预先感谢!

应该可以的预期:默认信号处理程序将在您的过程中有效调用exit(),这将终止该过程。要解决此问题,您应该安装信号处理程序并在接收信号时采取适当的操作。

最新更新