首页 > 代码库 > 等待子进程

等待子进程


1、pid_t wait(int* status);//阻塞,相当于waitpid(-1,&status,0);

2、pid_t waitpid(pid_t pid,int* status,int options);

pid :<-1    等待指定进程组中的任何一个子进程

        -1    等待任何一个子进程

        0     等待当前进程组中的任何一个子进程

        >0     等待指定pid的子进程

option:设为0即可

            WNOHANG    不阻塞立即返回

3、int waitid(idtype_t idtype,id_t id,siginfo_t *infop,int options);

idtype和id决定要等待的子进程

idtype :P_PID    等待与id相匹配的子进程

            P_PGID    等待与进程组id中任何一个子进程

            P_ALL    等待所有子进程,忽略id


当子进程的状态改变时,这些系统调用会立刻返回

如果子进程没有被等待,则成为僵尸进程


《完》









本文出自 “零蛋蛋” 博客,谢绝转载!

等待子进程