home *** CD-ROM | disk | FTP | other *** search
-
- GETITIMER(2) UNIX Programmer's Manual GETITIMER(2)
-
- NNAAMMEE
- ggeettiittiimmeerr, sseettiittiimmeerr - get/set value of interval timer
-
- SSYYNNOOPPSSIISS
- ##iinncclluuddee <<ssyyss//ttiimmee..hh>>
- ##ddeeffiinnee IITTIIMMEERR__RREEAALL 00
- ##ddeeffiinnee IITTIIMMEERR__VVIIRRTTUUAALL 11
- ##ddeeffiinnee IITTIIMMEERR__PPRROOFF 22
-
- _i_n_t
- ggeettiittiimmeerr(_i_n_t _w_h_i_c_h, _s_t_r_u_c_t _i_t_i_m_e_r_v_a_l _*_v_a_l_u_e)
-
- _i_n_t
- sseettiittiimmeerr(_i_n_t _w_h_i_c_h, _s_t_r_u_c_t _i_t_i_m_e_r_v_a_l _*_v_a_l_u_e, _s_t_r_u_c_t _i_t_i_m_e_r_v_a_l _*_o_v_a_l_u_e)
-
- DDEESSCCRRIIPPTTIIOONN
- The system provides each process with three interval timers, defined in
- <_s_y_s_/_t_i_m_e_._h>. The ggeettiittiimmeerr() call returns the current value for the
- timer specified in _w_h_i_c_h in the structure at _v_a_l_u_e. The sseettiittiimmeerr() call
- sets a timer to the specified _v_a_l_u_e (returning the previous value of the
- timer if _o_v_a_l_u_e is nonnil).
-
- A timer value is defined by the _i_t_i_m_e_r_v_a_l structure:
-
- struct itimerval {
- struct timeval it_interval; /* timer interval */
- struct timeval it_value; /* current value */
- };
-
- If _i_t___v_a_l_u_e is nonzero, it indicates the time to the next timer expira
- tion. If _i_t___i_n_t_e_r_v_a_l is nonzero, it specifies a value to be used in
- reloading _i_t___v_a_l_u_e when the timer expires. Setting _i_t___v_a_l_u_e to 0 dis
- ables a timer. Setting _i_t___i_n_t_e_r_v_a_l to 0 causes a timer to be disabled
- after its next expiration (assuming _i_t___v_a_l_u_e is nonzero).
-
- Time values smaller than the resolution of the system clock are rounded
- up to this resolution (typically 10 milliseconds).
-
- The ITIMER_REAL timer decrements in real time. A SIGALRM signal is de
- livered when this timer expires.
-
- The ITIMER_VIRTUAL timer decrements in process virtual time. It runs on
- ly when the process is executing. A SIGVTALRM signal is delivered when
- it expires.
-
- The ITIMER_PROF timer decrements both in process virtual time and when
- the system is running on behalf of the process. It is designed to be
- used by interpreters in statistically profiling the execution of inter
- preted programs. Each time the ITIMER_PROF timer expires, the SIGPROF
- signal is delivered. Because this signal may interrupt inprogress sys
- tem calls, programs using this timer must be prepared to restart inter
- rupted system calls.
-
- NNOOTTEESS
- Three macros for manipulating time values are defined in <_s_y_s_/_t_i_m_e_._h>.
- _T_i_m_e_r_c_l_e_a_r sets a time value to zero, _t_i_m_e_r_i_s_s_e_t tests if a time value is
- nonzero, and _t_i_m_e_r_c_m_p compares two time values (beware that >= and <= do
- not work with this macro).
-
- RREETTUURRNN VVAALLUUEESS
- If the calls succeed, a value of 0 is returned. If an error occurs, the
- value 1 is returned, and a more precise error code is placed in the
- global variable _e_r_r_n_o.
-
- EERRRROORRSS
- GGeettiittiimmeerr() and sseettiittiimmeerr() will fail if:
-
- [EFAULT] The _v_a_l_u_e parameter specified a bad address.
-
- [EINVAL] A _v_a_l_u_e parameter specified a time was too large to be han
- dled.
-
- SSEEEE AALLSSOO
- select(2), sigvec(2), gettimeofday(2)
-
- HHIISSTTOORRYY
- The ggeettiittiimmeerr function call appeared in 4.2BSD.
-
- 4.2 Berkeley Distribution March 10, 1991 2
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-