#include <sys/time.h>
int getitimer (which, value) int which; struct itimerval *value;
int setitimer (which, value, ovalue) int which; struct itimerval *value, *ovalue;
The system provides each process with three interval timers, defined in <sys/time.h>. The getitimer() call stores the current value of the timer specified by which into the structure pointed to by value. The setitimer() call sets the value of the timer specified by which to the value specified in the structure pointed to by value, and if ovalue is not a NULL pointer, stores the previous value of the timer in the structure pointed to by ovalue.
A timer value is defined by the itimerval structure, which includes the following members:
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 zero disables a timer; however, it_value and it_interval must still be initialized. Setting it_interval to zero causes a timer to be disabled after its next expiration (assuming it_value is non-zero).
Time values smaller than the resolution of the system clock are rounded up to this resolution.
The three timers are:
getitimer() and setitimer() return:
The possible errors are:
Three macros for manipulating time values are defined in <sys/time.h>. timerclear sets a time value to zero, timerisset tests if a time value is non-zero, and timercmp() compares two time values (beware that >= and <= do not work with this macro).
Created by unroff & hp-tools. © somebody (See intro for details). All Rights Reserved. Last modified 11/5/97