调用fork两次以避免僵死进程,第一遍看的时候不懂,感觉书里讲的比较少,到第二遍的时候才自认理解了一些。
我的理解是这样的:
初始进程fork个子进程,子进程再fork个孙子进程来。然后让子进程结束,孙子进程的父进程就改成init。
初始进程等待其子进程结束并用waitpid处理之,然后继续运行;而孙子进程结束后的处理由init来完成。
这样初始进程和孙子进程就可以各做各的事,互不干扰了
通过两次调用fork创建孙子进程,并更改其父进程为init,同时使用waitpid处理子进程退出,确保初始进程与孙子进程独立运行。
调用fork两次以避免僵死进程,第一遍看的时候不懂,感觉书里讲的比较少,到第二遍的时候才自认理解了一些。
我的理解是这样的:
初始进程fork个子进程,子进程再fork个孙子进程来。然后让子进程结束,孙子进程的父进程就改成init。
初始进程等待其子进程结束并用waitpid处理之,然后继续运行;而孙子进程结束后的处理由init来完成。
这样初始进程和孙子进程就可以各做各的事,互不干扰了
1031
2118

被折叠的 条评论
为什么被折叠?