HP-UX Reference (11i v3 07/02) - 2 System Calls (vol 5)
a
alarm(2) alarm(2)
NAME
alarm - set a process’s alarm clock
SYNOPSIS
#include <unistd.h>
unsigned int alarm(unsigned int sec);
DESCRIPTION
alarm() instructs the alarm clock of the calling process to send the signal
SIGALRM to the calling pro-
cess after the number of real-time seconds specified by sec have elapsed; see signal(5). Specific implemen-
tations might place limitations on the maximum supported alarm time. The constant
MAX_ALARM defined
in
<sys/param.h>
specifies the implementation-specific maximum. Whenever sec is greater that this
maximum, it is silently rounded down to it. On all implementations,
MAX_ALARM is guaranteed to be at
least 31 days (in seconds).
Alarm requests are not stacked; successive calls reset the alarm clock of the calling process.
If sec is 0, any previously made alarm request is canceled.
Alarms are not inherited by a child process across a
fork(), but are inherited across an
exec().
On systems that support the
getitimer() and setitimer() system calls, the timer mechanism
used by alarm() is the same as that used by ITIMER_REAL . Thus successive calls to alarm()
,
getitimer() , and setitimer() set and return the state of a single timer. In addition, alarm()
sets the timer interval to zero.
RETURN VALUE
alarm() returns the amount of time previously remaining in the alarm clock of the calling process.
WARNINGS
In some implementations, error bounds for alarm are −1, +0 seconds (for the posting of the alarm, not the
restart of the process). Thus a delay of 1 second can return immediately. The
setitimer() routine can
be used to create a more precise delay.
SEE ALSO
sleep(1), exec(2), getitimer(2), pause(2), signal(5), sleep(3C).
STANDARDS CONFORMANCE
alarm(): AES, SVID2, SVID3, XPG2, XPG3, XPG4, FIPS 151-2, POSIX.1
HP-UX 11i Version 3: February 2007 − 1 − Hewlett-Packard Company 53