等待子進程


一、pid_t wait(int* status);//阻塞,至關於waitpid(-1,&status,0);ide

二、pid_t waitpid(pid_t pid,int* status,int options);進程

pid :<-1    等待指定進程組中的任何一個子進程it

        -1    等待任何一個子進程
io

        0     等待當前進程組中的任何一個子進程class

        >0     等待指定pid的子進程di

option:設爲0便可view

            WNOHANG    不阻塞當即返回
vi

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

idtype和id決定要等待的子進程阻塞

idtype :P_PID    等待與id相匹配的子進程

            P_PGID    等待與進程組id中任何一個子進程

            P_ALL    等待全部子進程,忽略id


當子進程的狀態改變時,這些系統調用會馬上返回

若是子進程沒有被等待,則成爲殭屍進程


《完》

相關文章
相關標籤/搜索