Пишу свой шедулер, se7en.ru, 27-Дек-04, 16:21 [смотреть все]Понадобилось решить следующую задачу - надо запускать перловый скрипт раз в 5 секунд. Т.к. cron интервалы меньше 1 минуты не понимает написал свою програмку. В принципе всё работает, но мне кажется что дурью маюсь и ответ лежит на поверхности. Как из подобных ситуаций выходят гуру?Кому интересно програмка: #include <unistd.h> #include <stdio.h> #include <syslog.h> #include <stdlib.h> #include <signal.h> #include <sys/time.h> #include <sys/cdefs.h> #include <sys/_null.h> #include <sys/_types.h> void fsignal(int sig) { switch(sig) { case SIGALRM: system("/home/cgi/server.pl"); break; case SIGTERM: case SIGINT: case SIGQUIT: syslog(LOG_NOTICE,"DAEMON_TST daemon stopped on signal %d",sig); closelog(); exit(0); break; default: break; } } int main(int argc,char** argv) { struct itimerval val; // setgid(65534); // setuid(65534); // chdir("/"); fclose(stdin); fclose(stdout); fclose(stderr); if(fork()) exit(0); setsid(); int j; for(j=1; j<32; j++) { signal(j,fsignal); } syslog(LOG_NOTICE,"DAEMON_TST daemon started"); val.it_interval.tv_sec = 5; val.it_interval.tv_usec = 0; val.it_value.tv_sec = 5; val.it_value.tv_usec = 0; setitimer(ITIMER_REAL, &val, 0); while(1) pause(); }
|
- Пишу свой шедулер, Vladislav Lazarenko, 22:27 , 28-Дек-04 (1)
- Пишу свой шедулер, ACCA, 02:06 , 29-Дек-04 (3)
- Пишу свой шедулер, Alexander S. Salieff, 18:22 , 29-Дек-04 (5)
- Пишу свой шедулер, se7en.ru, 12:50 , 30-Дек-04 (6)
>#!/bin/sh > >while sleep 5 >do > /home/cgi/server.pl >done Гыы :-) прикольно! вот что значит не знать sh :-) спасибо за совет. зато теперь я знаю как делать демонов :-)
- Пишу свой шедулер, HEaLIX, 00:06 , 14-Янв-05 (8)
|