| 关键词: 进程 二子 include 组长 exit fork pid daemon 文件 void |
利用网上下载的这段代码,成功实现了守护进程,原来守护进程是很简单的事情。 在main函数中执行 init_daemon();//初始化为Daemon 就可以把进程变成守护进程 QUOTE: #include #include #include #include #include void init_daemon(void){int pid;int i;if(pid=fork())exit(0);//是父进程,结束父进程else if(pid< 0)exit(1);//fork失败,退出//是第一子进程,后台继续执行setsid();//第一子进程成为新的会话组长和进程组长//并与控制终端分离if(pid=fork())exit(0);//是第一子进程,结束第一子进程else if(pid< 0)exit(1);//fork失败,退出//是第二子进程,继续//第二子进程不再是会话组长for(i=0;i< NOFILE;++i)//关闭打开的文件描述符close(i);chdir("/tmp");//改变工作目录到/tmpumask(0);//重设文件创建掩模return;} |
|
声明:文章版权归原作者所有 部分文章转自互联网 如有侵权请联系
[邮箱地址] 删除
|