c_cpp daemon守护进程创建(Linux)

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了c_cpp daemon守护进程创建(Linux)相关的知识,希望对你有一定的参考价值。

#include <stdlib.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <unistd.h>

int main(int arg, char* args[])
{
    if (fork() > 0)
    {
        exit(0);
    }
    else
    {
        setsid();
        chdir("/");//让根目录成为当前工作目录
        umask(0);//不继承启动程序用户的权限,使之建立的文件其他用户可以使用
        
        
        //freopen("/dev/null", "w", stdout);//或者推荐重定向到/dev/null
        //freopen("/dev/null", "w", stderr);//或者推荐重定向到/dev/null
        close(STDIN_FILENO);//关闭标准输入流
        close(STDOUT_FILENO);//关闭标准输出流
        close(STDERR_FILENO);//关闭标准错误流
    }

    //....守护进程具体业务代码....

    return 0;
}

以上是关于c_cpp daemon守护进程创建(Linux)的主要内容,如果未能解决你的问题,请参考以下文章

Linux任务管理与守护进程

Daemon——守护进程

.NET跨平台实践:用C#开发Linux守护进程-Daemon

[C++]-Linux中创建Daemon程序

linux-------守护进程

Linux系统编程——Daemon进程