timespec - time in seconds and nanoseconds
Standard C library (
libc)
#include <time.h>
struct timespec {
time_t tv_sec; /* Seconds */
/* ... */ tv_nsec; /* Nanoseconds [0, 999'999'999] */
};
Describes times in seconds and nanoseconds.
tv_nsec is of an implementation-defined signed type capable of holding
the specified range. Under glibc, this is usually
long, and
long
long on X32. It can be safely down-cast to any concrete 32-bit integer
type for processing.
C11 and later; POSIX.1-2001 and later.
Prior to C23,
tv_nsec was
long.
The following headers also provide this type:
<aio.h>,
<mqueue.h>,
<sched.h>,
<signal.h>,
<sys/select.h>, and
<sys/stat.h>.
clock_gettime(2),
clock_nanosleep(2),
nanosleep(2),
timerfd_gettime(2),
timer_gettime(2),
time_t(3type),
timeval(3type)