Skip site navigation (1)Skip section navigation (2)

  
 
  

home | help
TIMERADD(3)		     Library Functions Manual		     TIMERADD(3)

NAME
     timeradd,	 timersub,   timerclear,   timerisset,	 timercmp,  timespecadd,
     timespecsub, timespecclear, timespecisset,  timespeccmp  --  operations  on
     timevals and timespecs

SYNOPSIS
     #include <sys/time.h>

     void
     timeradd(struct timeval *a, struct timeval *b, struct timeval *res);

     void
     timersub(struct timeval *a, struct timeval *b, struct timeval *res);

     void
     timerclear(struct timeval *tvp);

     int
     timerisset(struct timeval *tvp);

     int
     timercmp(struct timeval *a, struct timeval *b, CMP);

     void
     timespecadd(struct timespec *a, struct timespec *b, struct timespec *res);

     void
     timespecsub(struct timespec *a, struct timespec *b, struct timespec *res);

     void
     timespecclear(struct timespec *ts);

     int
     timespecisset(struct timespec *ts);

     int
     timespeccmp(struct timespec *a, struct timespec *b, CMP);

DESCRIPTION
     These  macros are provided for manipulating timeval and timespec structures
     for use with the clock_gettime(2),  clock_settime(2),  gettimeofday(2)  and
     settimeofday(2)  calls.   The  timeval structure is defined in <sys/time.h>
     as:

     struct timeval {
	     long    tv_sec;	     /* seconds since Jan. 1, 1970 */
	     long    tv_usec;	     /* and microseconds */
     };

     And the timespec structure is defined in <time.h> as:

     struct timespec {
	     time_t tv_sec;	     /* seconds */
	     long   tv_nsec;	     /* and nanoseconds */
     };

     timeradd() and timespecadd() add the time information stored in a to b  and
     store the result in res.  The results are simplified such that the value of
     res->tv_usec or res->tv_nsec is always less than 1 second.

     timersub() and timespecsub() subtract the time information stored in b from
     a and store the result in res.

     timerclear()  and	timespecclear() initialize their argument to midnight (0
     hour) January 1st, 1970 (the Epoch).

     timerisset() and timespecisset() return true if their argument  is  set  to
     any time value other than the Epoch.

     timercmp()  and  timespeccmp() compare a to b using the comparison operator
     given in CMP, and return the result of that comparison.

SEE ALSO
     clock_gettime(2), gettimeofday(2)

HISTORY
     The timeradd() family of macros were imported from NetBSD 1.1, and appeared
     in FreeBSD 2.2.6.	The timespecadd() family of macros  were  imported  from
     NetBSD 1.3 into FreeBSD 3.0, though they were not exposed to userland until
     FreeBSD 12.0.

FreeBSD 15.1			  July 30, 2018 		     TIMERADD(3)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=timespecadd&sektion=3&manpath=FreeBSD+15.1-RELEASE+and+Ports.quarterly>

home | help