0

现在写我正在将一些代码从 AIX 迁移到 SUSE Linux。在 AiX 中,我们有以下代码正常工作:

int Wait_for_child()
{
    alarm(10);
    while (((p_id = wait(&return_code)) > 0) ||(child_signal == 1)) {
       alarm(0);
     .......Do Something
    }
 return TRUE;
}

我们通过从另一个函数传递 SIGINT 来杀死孩子,并且我们成功地杀死了它。

if ((status = kill(proc_info->process_id, SIGINT)) != 0) 
{
    log.printf("fail");      
    return(FAIL)
 } 

但在 LINUX 中,等待系统调用不会返回最近终止的子进程 ID。请分享你的想法。谢谢

4

0 回答 0