wait和waitpid的区别 linux waitpid函数?
linux waitpid函数?
Waitpid function
与wait相同,但可以指定在不阻塞的情况下清除PID进程。
pid waitpid(pid pid,int*status,in options)成功:返回已清除的子进程ID;失败:-1(无子进程)]特殊参数并返回case
参数pid:
> 0恢复指定ID的子进程,恢复任何子进程(相当于pid:
>),恢复,以及当前呼叫组的所有子进程。回收指定进程组中的任何子进程
返回0:参数3为wnohang,子进程正在运行。
注意:wait或waitpid调用只能清理一个子进程,循环应用于清理多个子进程。
进程间通信中wait函数有什么作用?
调用wait或waitpid有三种不同的情况:1。如果它的所有子进程仍在运行,它将阻塞
2。如果子进程终止并等待父进程获得终止状态,它将获得子进程的终止状态并立即返回
3。如果它没有任何子进程,如果进程由于接收到sigchld信号而调用wait,它将立即返回错误,可以预期wait将立即返回,但是如果它在任何时候被调用,进程可能会阻塞。
在子进程终止之前,wait会导致其调用者阻塞,而waitpid有一个使调用者不阻塞的选项。Waitpid不会等待第一个子进程在其调用后终止。它有几个选项来控制他正在等待的进程。waitpid函数提供了wait函数没有提供的三个函数:1。Waitpid可以等待特定进程,而wait返回任何终止的子进程的状态。2Waitpid提供了wait的非阻塞版本。三。Waitpid支持作业控制
wait和waitpid的区别 wait和waitpid wait函数
版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。