alarm.c 198 B

12345678910111213
  1. unsigned
  2. alarm(n)
  3. unsigned n;
  4. {
  5. struct { long l1,l2,l3,l4; } t1,t2;
  6. t1.l1 = 0;
  7. t1.l2 = 0;
  8. t1.l4 = 0;
  9. t1.l3 = n;
  10. if (setitimer(0,&t1,&t2) < 0) return -1;
  11. if (t2.l4) t2.l3++;
  12. return t2.l3;
  13. }