GETITIMER(2) | System Calls Manual | GETITIMER(2) |
getitimer
, setitimer
—
#include <sys/time.h>
int
getitimer
(int
which, struct itimerval
*value);
int
setitimer
(int
which, const struct
itimerval * restrict value,
struct itimerval * restrict
ovalue);
getitimer
() call returns the current value for the
timer specified in which in the structure at
value. The setitimer
() call sets
a timer to the specified value, returning the previous
value of the timer if ovalue is not
NULL
.
A timer value is defined by the itimerval structure:
struct itimerval { struct timeval it_interval; /* timer interval */ struct timeval it_value; /* current value */ };
If it_value is non-zero, it indicates the time to the next timer expiration. If it_interval is non-zero, it specifies a value to be used in reloading it_value when the timer expires. Setting it_value to 0 disables a timer. Setting it_interval to 0 causes a timer to be disabled after its next expiration (assuming it_value is non-zero).
The which parameter specifies the type of the timer:
ITIMER_REAL
SIGALRM
signal is delivered when this timer
expires.ITIMER_VIRTUAL
SIGVTALRM
signal is delivered when it
expires.ITIMER_PROF
ITIMER_PROF
timer expires,
the SIGPROF
signal is delivered. Because this
signal may interrupt in-progress system calls, programs using this timer
must be prepared to restart interrupted system calls.ITIMER_MONOTONIC
SIGALRM
signal is delivered when this timer
expires.getitimer
() function call appeared in
4.2BSD. The ITIMER_MONOTONIC
functionality appeared in NetBSD 6.0.
April 28, 2019 | NetBSD 9.2 |