一個守護進程寫法daemon

  #include <stdio.h>                                                                                                                                                             
  #include <unistd.h>
  #include <sys/types.h>
  #include <stdlib.h>
  #include <sys/stat.h>
  void  initDaemon() {
    #if defined(WIN32)
       return;
    #else
       int pid;
       if((pid = fork())>0)
            exit(0);
       else if(pid<0)
            exit(1);
       setsid();
       if((pid=fork())>0)
          exit(0);
       else if(pid<0)
          exit(1);
       umask(0);
    #endif
  }
  int main() {
   initDaemon();
    for(;;){
      sleep(1);
    }
  }

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章