我有一个小型命令行应用程序,可以与一些自定义硬件通信。
现在,您运行可执行文件,它会弹出一个控制台窗口,并执行它的操作。我正在处理SIGINT
和SIGTERM
因此,如果您在控制台窗口中按 ctrl+c ,它会正常关闭,并释放自定义硬件。
但是,如果通过简单地关闭控制台窗口(单击角落中的“x”)来终止应用程序,它似乎基本上会立即被终止,没有时间进行任何清理。
如果控制台关闭,我希望能够执行关闭程序。当控制台关闭时,我没有太多运气试图找出我的进程到底发生了什么。
最佳答案
当我提出问题时,我发现 Gracefully terminate a Boost Asio based Windows console application ,它准确地回答了这个问题(我什至正在使用 boost-asio!)。
关于c++ - 在控制台窗口关闭时优雅地关闭命令行应用程序(在 Windows 上),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48795246/