由于守护进程是脱离控制终端的,因此,完成第一步后就会在Shell终端里造成程序已经运行完毕的假象。之后的所有工作都在子进程中完成,而用户在Shell终端里则可以执行其他命令,从而在形式上做到了与控制终端的脱离,在后台工作。 在孙进程中调用 umask() 函数,设置进程的文件权限掩码为0文件权限掩码是指屏蔽掉文件权限中的对应位。设置文件权限掩码的函数是umask。在这里,通常的使用方法为umask。所以,文件描述符为0、1和2 的3个文件已经失去了存在的价值,也应被关闭。所以,守护进程中需要编码来实现 kill 发出的signal信号处理,达到进程的正常退出。

C++编写LINUX守护进程的实现代码

C++编写LINUX守护进程的实现代码

C++编写LINUX守护进程的实现代码