忽略子进程中的SIGINT信号

我正在编写一个简单的程序,其中父和子进程可以打印到文件中.我已经设法使用用户定义的信号做到这一点.现在我想处理SIGINT信号.一旦收到ctrl-c,父母必须向孩子发送终止信号,孩子应该终止,最后父母应该终止.

我的问题是,为了使这项工作正常,我必须只从父母那里获取SIGINT信号,而从儿童那里获取IGNORE.这样对吗?如果是的话有任何暗示吗?

最佳答案
呼叫:

signal(SIGINT, SIG_IGN);

从子进程中将使子进程忽略SIGINT信号.从man signal开始:

If the disposition is set to SIG_IGN, then the signal is ignored.

转载注明原文:忽略子进程中的SIGINT信号 - 代码日志