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 seconds  have   elapsed  (see   signal(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  can-
     celled.

     Alarm requests are not stacked; only one SIGALRM  generation
     can  be  scheduled in this manner; if the SIGALRM signal has
     not yet been generated, 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 pro-
     cess.  A  new process image created by one of the exec func-
     tions 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  attri-
     butes:

     ____________________________________________________________
    |       ATTRIBUTE TYPE        |       ATTRIBUTE VALUE       |
    |_____________________________|_____________________________|
    | MT-Level                    | Async-Signal-Safe           |
    |_____________________________|_____________________________|


SEE ALSO

     exec(2), fork(2), signal(3HEAD), attributes(5), standards(5)


Man(1) output converted with man2html