Penguin

Differences between current version and predecessor to the previous major change of alarm(2).

Other diffs: Previous Revision, Previous Author, or view the Annotated Edit History

Newer page: version 2 Last edited on Monday, October 28, 2002 9:01:50 pm by PerryLorier
Older page: version 1 Last edited on Tuesday, June 4, 2002 12:23:39 am by perry Revert
@@ -1,68 +1,44 @@
 ALARM 
 !!!ALARM 
-NAME  
-SYNOPSIS  
-DESCRIPTION  
-RETURN VALUE  
-NOTES  
-CONFORMING TO  
-SEE ALSO  
+  
 ---- 
 !!NAME 
  
  
 alarm - set an alarm clock for delivery of a signal 
 !!SYNOPSIS 
  
  
-__ #include  
-__ ''seconds''__);  
- __ 
+ #include <unistd.h>  
+ __unsigned int alarm(unsigned int __ ''seconds''__); __  
+  
 !!DESCRIPTION 
  
+__alarm__ arranges for a [SIGALRM] signal to be delivered to the process in ''seconds'' seconds.  
  
-__alarm__ arranges for a __SIGALRM__ signal to be  
-delivered to the process in ''seconds''  
-seconds
+If ''seconds'' is zero, no new __alarm__ is scheduled
  
+In any event any previously set __alarm__ is cancelled.  
  
-If ''seconds'' is zero, no new __alarm__ is  
-scheduled
+If you want to wait for a time without using sleep(3) or alarm(2), then you might want to try select(2) with all the fdset 's set to . select(2) also lets you pause for a subsecond delay
  
+Since a [SIGALRM] will interrupt a running syscall it's common to use alarm(2) to timeout syscalls that may take some time, for example connect(2).  
  
-In any event any previously set __alarm__ is  
-cancelled.  
 !!RETURN VALUE 
  
+__alarm__ returns the number of seconds remaining until any previously scheduled alarm was due to be delivered, or zero if there was no previously scheduled alarm.  
  
-__alarm__ returns the number of seconds remaining until  
-any previously scheduled alarm was due to be delivered, or  
-zero if there was no previously scheduled  
-alarm.  
 !!NOTES 
  
+alarm(2) and setitimer(2) share the same timer; calls to one will interfere with use of the other.  
  
-__alarm__ and __setitimer__ share the same timer ;  
- calls to one will interfere with use of the  
-other
+sleep(3) may be implemented using [SIGALRM] ; mixing calls to alarm(2) and sleep(3) is a bad idea
  
+Scheduling delays can, as ever, cause the execution of the process to be delayed by an arbitrary amount of time.  
  
-__sleep()__ may be implemented using __SIGALRM__;  
-mixing calls to __alarm()__ and __sleep()__ is a bad  
-idea.  
-  
-  
-Scheduling delays can, as ever, cause the execution of the  
-process to be delayed by an arbitrary amount of  
-time.  
 !!CONFORMING TO 
-  
  
 SVr4, SVID, POSIX, X/OPEN, BSD 4.3 
 !!SEE ALSO 
  
-  
- setitimer(2), signal(2), sigaction(2),  
- gettimeofday(2), select(2), pause(2),  
- sleep(3)  
-----  
+setitimer(2), signal(2), sigaction(2), gettimeofday(2), select(2), pause(2), sleep(3), select(2)  
This page is a man page (or other imported legacy content). We are unable to automatically determine the license status of this page.