创建deamon的代码 中的一点疑惑
在网上找了几个创建deamon时的代码,都有下面一段:
- if(pid=fork())
- exit(0);//是父进程,结束父进程
- else if(pid< 0)
- exit(1);//fork失败,退出
复制代码
我不理解的是:当fork创建失败,即pid是负值的时候,在第一个if里面就直接exit(0)了,根本不会用到else if(pid<0).
创建成功时,正值或者0的时候,明显也不会用到else if。
那么这个else if放在这是什么意思?
补充:这个代码是要创建一个子进程,子进程创建成功后,杀掉父进程的
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
这种写法有问题,网上的东西不可全信,自己分析原理得出答案才是真道理。
恩,第一次看到的时候觉得是有问题,后来看到别人都是这么写,自己又是新手,所以迷糊了。谢谢了
复制代码
APUE和用TCP/IP进行网际互联第三卷 Linux/POSIX套接字版中都有关于守护进程的详细介绍。
[ 本帖最后由 xunen 于 2008-8-31 08:10 编辑 ]
好像刚下了APUE的电子版,我去看看