#include <unistd.h>useconds_t ualarm(useconds_t useconds, useconds_t interval);
The ualarm() function causes the
SIGALRM signal to be generated for the calling process after the number of real-time microseconds specified
by the useconds argument has elapsed. When the interval argument is non-zero, repeated timeout notification occurs with a period in microseconds specified
by the interval argument. If the notification signal,
SIGALRM, is not caught or ignored, the calling process is terminated.
Because of scheduling delays, resumption of execution when the signal is caught may be delayed an arbitrary amount of time.
The ualarm() function returns the number of microseconds remaining from the previous ualarm() call. If no timeouts are pending or if ualarm() has not previously been called, ualarm() returns 0.
No errors are defined.
The ualarm() function is a simplified interface to setitimer(2), and uses the ITIMER_REAL interval timer.