Архитектура Unix

       

Программа, использующая системную функцию alarm



Рисунок 8.8. Программа, использующая системную функцию alarm



#include <sys/types.h> #include <sys/stat.h> #include <sys/signal.h> main(argc,argv) int argc; char *argv[]; { extern unsigned alarm(); extern wakeup(); struct stat statbuf; time_t axtime; if (argc != 2) { printf("только 1 аргумент\n"); exit(); } axtime = (time_t) 0; for (;;) { /* получение значения времени доступа к файлу */ if (stat(argv[1],&statbuf) == -1) { printf("файла с именем %s нет\n",argv[1]); exit(); } if (axtime != statbuf.st_atime) { printf("к файлу %s было обращение\n",argv[1]); axtime = statbuf.st_atime; } signal(SIGALRM,wakeup); /* подготовка к приему сигнала */ alarm(60); pause(); /* приостанов до получения сигнала */ } } wakeup() { }










Содержание раздела