wait和waitpid函数作用
时间: 2024-05-27 14:08:01 浏览: 66
详解C语言中的wait()函数和waitpid()函数
`wait()` 和 `waitpid()` 函数都用于等待子进程结束,并获取它的退出状态。
`wait()` 函数会挂起当前进程,直到有一个子进程退出,然后返回该子进程的进程号和退出状态。如果没有子进程在运行,`wait()` 函数会立即返回 `-1`。
`waitpid()` 函数也是等待子进程结束,但它可以指定等待的子进程的进程号和一些额外的选项。这些选项包括:
- `WNOHANG`:不挂起当前进程,如果没有子进程退出立即返回 0。
- `WUNTRACED`:也等待停止的子进程(但不包括被跟踪的子进程)。
`waitpid()` 函数返回退出的子进程的进程号,或者在出现错误时返回 -1。如果指定了 `WNOHANG` 选项并且没有子进程退出,`waitpid()` 将返回 0。
阅读全文