1
我有一個接收到SIGTSTP信號的子進程。 當我打電話在停止的作業上執行waitpid塊嗎?
waitpid(-1,NULL,0);
父塊,但在文檔中,它寫道,waitpid函數與PID已停止工作的回報。
#include<unistd.h>
#include<stdio.h>
#include<signal.h>
#include<sys/wait.h>
main() {
int pid;
if((pid=fork()) > 0) {
sleep(5);
if(kill(pid,SIGTSTP) < 0)
printf("kill error\n");
int status;
waitpid(-1,&status,0);
printf("Returned %d\n",WIFSTOPPED(status));
}
else if(pid==0) {
while(1);
}
}
非常感謝你的回答。我應該正確閱讀文檔。我在我的大型項目中浪費了兩個小時來尋找其他錯誤。 – avd 2009-10-03 17:28:54