pid_t waitpid(pid_t pid,int *status,int options);成功:返回清理掉的子进程ID;失败:-1(无子进程) 特殊参数和返回情况: 参数pid: >0 回收指定ID的子
pid>0只等待进程ID等于pid的子进程,不管其它已经有多少子进程运行结束退出了,只要指定的子进程还没有结束,waitpid就会一直等下去。 pid=-1 等待任何一
waitpid(pid_t pid,int * status,int options); //子进程的结束状态值会由参数 status 返回,而子进程的进程识别码也会一起返回 while(pid != waitpid(
wait和waitpid出现的原因 SIGCHLD --当子进程退出的时候,内核会向父进程发送SIGCHLD信号,子进程的退出是个异步事件(子进程可以在父进程运行的任何时刻
waitpid(pid_t pid,int * status,int options); //子进程的结束状态值会由参数 status 返回,而子进程的进程识别码也会一起返回 while(pid != waitpid(
如果调用wait的进程没有已终止的子进程,不过有一个或多个子进程仍在执行,那么wait将阻塞到现有子进程一个终止为止。 waitpid函数就等待哪个进程以及