apue 8-5调用fork两次以避免僵死进程
2014-11-18 01:14
453 查看
/* 调用fork两次以避免僵死进程 */ #include "apue.h" #include <sys/wait.h> int main(void) { pid_t pid; if((pid=fork()) < 0) { err_sys("fork error"); } else if(pid == 0) { if((pid=fork()) < 0) err_sys("fork error"); else if(pid > 0) { exit(0); // 第一个子程序退出 } sleep(20); printf("second child, parent pid=%d\n", getpid()); exit(0); // 第二个子程序退出 } if(waitpid(pid, NULL, 0) != pid) err_sys("waitpid error"); exit(0); }
不知道为什么没有显示书中所显示的效果,怀疑了可能是exit(0)不能使主程序完全对出吧
需要人工输入enter键,表示不大清楚.......
相关文章推荐
- 调用 fork() 两次以避免僵死进程
- 调用 fork() 两次以避免僵死进程
- 调用fork两次以避免僵死进程
- 调用fork两次以避免僵死进程
- 调用fork两次以避免僵死进程的产生
- 调用 fork() 两次以避免僵死进程
- 避免linux系统调用fork后产生僵死进程
- 调用 fork 两次避免僵尸进程
- UNIX环境高级编程有一个例子说fork两次可以避免产生僵死进程,我不知道,为什么fork两次就能避免僵死进程?
- 为何要fork()两次来避免产生僵尸进程?
- fork两次如何避免僵尸进程收藏
- fork两次如何避免僵尸进程收藏
- fork两次如何避免僵尸进程收藏
- 为何要fork()两次来避免产生僵尸进程?
- fork两次如何避免僵尸进程收藏
- fork两次如何避免僵尸进程收藏
- 为何要fork()两次来避免产生僵尸进程?
- 为何要fork()两次来避免产生僵尸进程?
- 【apue学习心得】两次fork避免僵尸进程
- fork两次如何避免僵尸进程