【发布时间】:2019-09-02 18:35:49
【问题描述】:
如果子进程调用 exec,它会终止并使用相同的 pid 创建一个新进程。
wait() 函数会等待子节点还是孙子节点终止?
【问题讨论】:
-
在子进程调用
exec之后,仍然有相同的子进程ID,但运行的是不同的程序——没有孙子进程(目前)。即使后续有孙子,因为子分叉,原来的进程也等不及那个孙子;它只能等待它自己的直系后代,通过fork()(或者posix_spawn())处理它自己创建的进程。