daemo中若忽略掉了SIGCHLD信号,则在使用system函数时,需先把忽略的信号设置为默认处理方式,然后才能调用system函数。
否则system调用得到的返回值将不是子进程的返回值。
signal(SIGCHLD, SIG_DFL);
ret = system(cmd);
signal(SIGCHLD, SIG_IGN);
daemo中若忽略掉了SIGCHLD信号,则在使用system函数时,需先把忽略的信号设置为默认处理方式,然后才能调用system函数。
否则system调用得到的返回值将不是子进程的返回值。
signal(SIGCHLD, SIG_DFL);
ret = system(cmd);
signal(SIGCHLD, SIG_IGN);