alarm(2) System Calls alarm(2)
NAME
alarm - schedule an alarm signal
SYNOPSIS
#include <unistd.h>
unsigned int alarm(unsigned int sec);
DESCRIPTION
The alarm() function causes the system to generate a SIGALRM signal for the process after the number of real-time seconds specified by sec-
onds have elapsed (see signal.h(3HEAD)). Processor scheduling delays may prevent the process from handling the signal as soon as it is
generated.
If seconds is 0, a pending alarm request, if any, is cancelled.
Alarm requests are not stacked; only one SIGALRM generation can be scheduled in this manner; if the SIGALRM signal has not yet been gen-
erated, the call will result in rescheduling the time at which the SIGALRM signal will be generated.
The fork(2) function clears pending alarms in the child process. A new process image created by one of the exec functions inherits the time
left to an alarm signal in the old process's image.
RETURN VALUES
If there is a previous alarm request with time remaining, alarm() returns a non-zero value that is the number of seconds until the
previous request would have generated a SIGALRM signal. Otherwise, alarm() returns 0.
ERRORS
The alarm() function is always successful; no return value is reserved to indicate an error.
ATTRIBUTES
See attributes(5) for descriptions of the following attributes:
+-----------------------------+-----------------------------+
| ATTRIBUTE TYPE | ATTRIBUTE VALUE |
+-----------------------------+-----------------------------+
|Interface Stability |Standard |
+-----------------------------+-----------------------------+
|MT-Level |Async-Signal-Safe |
+-----------------------------+-----------------------------+
SEE ALSO
exec(2), fork(2), signal.h(3HEAD), attributes(5), standards(5)
SunOS 5.10 7 Jun 2001 alarm(2)