- 论坛徽章:
- 0
|
在fork函数问题中,这句指令怎么执行???
我也有个问题。如何kill 自己
/* daemon.c */
/* author:netkiller
* title :fork template
* */
#include<unistd.h>;
#include<sys/types.h>;
#include <sys/stat.h>;
#include <stdio.h>;
#include <string.h>;
#define MAXFILE 65535
void log(){
FILE *fp;
time_t t;
if((fp=fopen("fork.log","a") >;=0){
t=time(0);
fprintf(fp,"I'm here at %s\n",asctime(localtime(&t)) );
fclose(fp);
}
}
void my_daemon(){
pid_t pid;
int i;
pid=fork();
if(pid<0){
printf("error in fork\n"
exit(1);
}else if(pid>;0)
exit(0);
setsid();
chdir("/tmp"
umask(0);
for(i=0;i<MAXFILE;i++)
close(i);
}
void parameter(int argc,char **argv){
char param[255];
switch(argc){
case 1:
sprintf(param,"Usage: %s {start|stop|restart|condrestart|reload|status|fullstatus|graceful|help|configtest}\n",argv[0]);
break;
case 2:
if(strcmp(argv[1],"start"==0){
my_daemon();
sprintf(param,"Starting\n",argv[0]);
}else if(strcmp(argv[1],"stop"==0){
printf("%d",getpid());
//kill();
}
break;
}
printf(param);
}
main(int argc,char **argv)
{
parameter(argc,argv);
/*
for(;{
sleep(10);
log();
}
*/
}
当xxx stop 自杀。如何写。。。 |
|