我有一个简单的程序,使用Qt框架。它使用QProcess来执行RAR并压缩一些文件。在我的程序中,我捕获 SIGINT
并在它发生时在我的代码中做一些事情:
signal(SIGINT, &unix_handler);
当发生SIGINT
信号时,我会检查RAR进程是否完成,如果没有完成,我将等待它...问题在于(我认为)RAR进程也收到了本应该发送给我的程序的SIGINT
信号,导致它在没有压缩所有文件的情况下退出。
有没有一种方法可以运行RAR进程,使其在我的程序接收到SIGINT
信号时不接收同样的信号?
谢谢