• Daemon函数的用法


    Daemon函数的用法

    说明:

    让一个程序后台运行。

    原型:

     

    1. #include <unistd.h>  
    2.   
    3. int daemon(int nochdir, int noclose);  

    参数:

    nochdir为零时,当前目录变为根目录,否则不变;

    noclose为零时,标准输入、标准输出和错误输出重导向为/dev/null,也就是不输出任何信 息,否则照样输出。

    返回值:

    deamon()调用了fork(),如果fork成功,那么父进程就调用_exit(2)退出,所以看到的错误信息 全部是子进程产生的。如果成功函数返回0,否则返回-1并设置errno

    示例:

     

    1. #include <stdio.h>  
    2. #include <stdlib.h>  
    3. #include <unistd.h>  
    4. #include <fcntl.h>  
    5. #include <limits.h>  
    6.   
    7. int main(int argc, char *argv[])  
    8. {  
    9.     char strCurPath[PATH_MAX];  
    10.   
    11.     if(daemon(1, 1) < 0)  
    12.     {  
    13.         perror("error daemon.../n");  
    14.         exit(1);  
    15.     }  
    16.     sleep(10);  
    17.   
    18.     if(getcwd(strCurPath, PATH_MAX) == NULL)  
    19.     {  
    20.         perror("error getcwd");  
    21.         exit(1);  
    22.     }  
    23.     printf("%s/n", strCurPath);  
    24.     return 0;  
    25. }  

    假如运行成功,父进程在daemon函数运行完毕后自杀,以后的休眠和打印全部是子进程来运行。

    可以修改daemon函数的参数来查看效果。

    可以去掉daemon一句,用./a.out&来验证效果。

  • 相关阅读:
    Fixed Table Header jQuery Plugin
    jquery实现置顶和置底特效
    HTTP_REFERER头的使用方法
    为什么使用框架?
    javascript:history的一些用法
    揭秘BYOD五大隐藏成本
    PHP中冒号、endif、endwhile、endfor使用介绍
    面对业务开拓重任,CIO们普遍显得缺乏信心
    Asp.net中的页面传值
    DropDownList的用法
  • 原文地址:https://www.cnblogs.com/zxc2man/p/8244951.html
Copyright © 2020-2023  润新知