UALARM(3)

UALARM(3) | Library Functions Manual | UALARM(3)

# NAME

`ualarm` —
schedule signal after specified time

# LIBRARY

Standard C Library (libc, -lc)

# SYNOPSIS

`#include <unistd.h>`

useconds_t
`ualarm`(useconds_t microseconds, useconds_t interval);

# DESCRIPTION

This is a simplified interface to setitimer(2).

The `ualarm`() function waits a count of microseconds before asserting the terminating signal `SIGALRM`. System activity or time used in processing the call may cause a slight delay.

If the interval argument is non-zero, the `SIGALRM` signal will be sent to the process every interval microseconds after the timer expires (e.g. after microseconds microseconds have passed).

# RETURN VALUES

When the signal has successfully been caught, `ualarm`() returns the amount of time left on the clock. The maximum number of microseconds allowed is 2147483647. If there is an error setting the timer, `ualarm`() returns ((useconds_t) -1).

# SEE ALSO

getitimer(2), setitimer(2), sigaction(2), sigsuspend(2), alarm(3), signal(3), sigvec(3), sleep(3), usleep(3)

# STANDARDS

The `ualarm`() function conforms to IEEE Std 1003.1-2001 (“POSIX.1”). However, the later IEEE Std 1003.1-2008 (“POSIX.1”) revision removed the function from the specification.

# HISTORY

The `ualarm`() function appeared in 4.3BSD.

May 2, 2011 | NetBSD 10.0