VMS Help  —  CRTL  ualarm
    Sets or changes the timeout of interval timers.

    Format

      #include  <unistd.h>

      useconds_t ualarm  (useconds_t mseconds, useconds_t interval);

1  –  Arguments

 mseconds

    Specifies a number of real-time microseconds.

 interval

    Specifies the interval for repeating the timer.

2  –  Description

    The ualarm function causes the SIGALRM signal to be generated for
    the calling process after the number of real-time microseconds
    specified by useconds has elapsed. When the interval argument is
    nonzero, repeated timeout notification occurs with a period in
    microseconds specified by interval. If the notification signal
    SIGALRM is not intercepted or is ignored, the calling process is
    terminated.

    If you call a combination of ualarm and setitimer functions, and
    the AST status is disabled, the return value is invalid.

    If you call a combination of ualarm and setitimer functions, and
    the AST status is enabled, the return value is valid.

    This is because you cannot invoke an AST handler to clear the
    previous value of the timer when ASTs are disabled or invoked
    from a handler that was invoked at AST level.

                                   NOTE

       Interactions between ualarm and either alarm, or sleep are
       unspecified.

    See also setitimer.

3  –  Return Values

    n                  The number of microseconds remaining from the
                       previous ualarm or setitimer call.
    0                  No timeouts are pending or ualarm not
                       previously called.
    -1                 Indicates an error.
Close Help