|
|
1.1 ! root 1: /* ! 2: * Copyright (c) 1980 Regents of the University of California. ! 3: * All rights reserved. The Berkeley software License Agreement ! 4: * specifies the terms and conditions for redistribution. ! 5: * ! 6: * @(#)alarm_.c 5.1 6/7/85 ! 7: */ ! 8: ! 9: /* ! 10: * set an alarm time, arrange for user specified action, and return. ! 11: * ! 12: * calling sequence: ! 13: * integer flag ! 14: * external alfunc ! 15: * lastiv = alarm (intval, alfunc) ! 16: * where: ! 17: * intval = the alarm interval in seconds; 0 turns off the alarm. ! 18: * alfunc = the function to be called after the alarm interval, ! 19: * ! 20: * The returned value will be the time remaining on the last alarm. ! 21: */ ! 22: ! 23: #include <signal.h> ! 24: ! 25: long alarm_(sec, proc) ! 26: long *sec; ! 27: int (* proc)(); ! 28: { ! 29: register long lt; ! 30: ! 31: lt = alarm(1000); /* time to maneuver */ ! 32: ! 33: if (*sec) ! 34: signal(SIGALRM, proc); ! 35: ! 36: alarm(*sec); ! 37: return(lt); ! 38: }
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.