在C中捕获Unix Style Shell的多个SIGCHLD进程

时间:2014-02-13 20:16:05

标签: c shell signals sigchld

我正在编写一个可扩展的shell我正在研究一个与从Unix内核捕获SIGCHLD信号有关的问题。

我正在尝试维护当前作业的列表(因此当用户在shell中键入“作业”时,我可以返回相应的作业)。当我需要从列表中删除作业时出现问题。当我收到SIGCHLD信号时,我想将它们从列表中删除,让我知道该过程已终止。

有两个问题: 1.当我收到SIGCHLD信号时,我如何知道哪个孩子发送了该信号? 2.如果收到多个SIGCHLD信号并且它们没有排队,我如何处理,所以我只会看到第一个SIGCHLD返回?

谢谢!

0 个答案:

没有答案