daemon.c
来自「使用python调用tuxedo服务的代码, 中间以 c 调用tuxedo客户端」· C语言 代码 · 共 65 行
C
65 行
//#include "ofh.h"#include <signal.h>voidIgnoreAllSignal(){struct sigaction act; act.sa_handler = SIG_IGN; sigemptyset(&act.sa_mask); act.sa_flags=0; sigaction(SIGHUP,&act,NULL); sigaction(SIGCHLD,&act,NULL); sigaction(SIGQUIT,&act,NULL); return ;}intGenDaemon(){int childpid,fd;int flag; if (getppid()==1) { /*chdir ("/");*/ umask(0); IgnoreAllSignal(); return 0; } IgnoreAllSignal(); if ((childpid = fork())<0 ) { printf("can't fork first child %s %d\n",__FILE__,__LINE__); exit(-1); } else if (childpid > 0) exit(0); /*---if ((flag=setpgrp()) == -1) { printf("set process group err %s %d\n",__FILE__,__LINE__); exit(-2); }----*//**** IgnoreAllSignal(); if ((childpid = fork()) < 0) { printf("can't fork fist child %s %d\n",__FILE__,__LINE__); exit(-3); } else if (childpid > 0) exit(0);****/ for (fd=3; fd<=8;fd++) close (fd); /* chdir("/"); */ umask(0); IgnoreAllSignal(); return 0;}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?