读书人

有没有子进程等待父进程这一说?解决办

发布时间: 2012-03-25 20:55:17 作者: rapoo

有没有子进程等待父进程这一说?
我今天看了 fork() wait() 函数:
貌似wait() 函数是用来 父亲进程等待子进程,

wait() 可不可以使子进程等待父进程啊? 还是说根本就没有 子等父这一说法!

偶滴概念还不是很理解,有点模糊,求高手指点一二。 嘻嘻

[解决办法]
父进程死了,子进程的父进程就不是死了的这个父进程了,而变为init进程了
[解决办法]
wait()只能用于等待子进程。 man 里面对 wait()系列系统调用有明确的说明:
All of these system calls are used to wait for state changes in a child of the calling process, and obtain information about the child whose state has changed.
如果一个进程没有子进程,wait()函数返回 -1, errno 设置为 ECHILD.
[解决办法]
就没有 子 等 父 这个说法,子进程不能获取父进程的退出状态。

如果你的意思的是子进程等待父进程执行结束后,再做什么相应处理..
那可以利用某种进程间通信机制,进行通知
[解决办法]
貌似没有,子进程的父进程结束后,如果子进程还在运行,那么这个子进程就成了孤儿进程,会被init进程接管

读书人网 >UNIXLINUX

热点推荐