什么是函數(shù)? linux waitpid函數(shù)?
linux waitpid函數(shù)?Waitpid function與wait相同,但可以指定在不阻塞的情況下清除PID進程。pid waitpid(pid pid,int*status,in opt
linux waitpid函數(shù)?
Waitpid function
與wait相同,但可以指定在不阻塞的情況下清除PID進程。
pid waitpid(pid pid,int*status,in options)成功:返回已清除的子進程ID;失?。?1(無子進程)]特殊參數(shù)并返回case
參數(shù)pid:
> 0恢復指定ID的子進程,恢復任何子進程(相當于pid:
>),恢復,以及當前呼叫組的所有子進程?;厥罩付ㄟM程組中的任何子進程
返回0:參數(shù)3為wnohang,子進程正在運行。
注意:wait或waitpid調用只能清理一個子進程,循環(huán)應用于清理多個子進程。
進程間通信中wait函數(shù)有什么作用?
調用wait或waitpid有三種不同的情況:1。如果它的所有子進程仍在運行,它將阻塞
2。如果子進程終止并等待父進程獲得終止狀態(tài),它將獲得子進程的終止狀態(tài)并立即返回
3。如果它沒有任何子進程,如果進程由于接收到sigchld信號而調用wait,它將立即返回錯誤,可以預期wait將立即返回,但是如果它在任何時候被調用,進程可能會阻塞。
在子進程終止之前,wait會導致其調用者阻塞,而waitpid有一個使調用者不阻塞的選項。Waitpid不會等待第一個子進程在其調用后終止。它有幾個選項來控制他正在等待的進程。waitpid函數(shù)提供了wait函數(shù)沒有提供的三個函數(shù):1。Waitpid可以等待特定進程,而wait返回任何終止的子進程的狀態(tài)。2Waitpid提供了wait的非阻塞版本。三。Waitpid支持作業(yè)控制