clock_gettime(3) — Subroutines
NAME
clock_gettime, clock_settime − Get or set the time for the specified clock (P1003.1b)
SYNOPSIS
#include <time.h>
int clock_gettime (
clockid_t clock_id,
struct timespec ∗tp);
int clock_settime (
clockid_t clock_id,
const struct timespec ∗tp);
PARAMETERS
clock_id The clock type used to obtain the time for the clock that is set. The CLOCK_REALTIME clock is supported and represents the TIME-OF-DAY clock for the system.
∗tp A pointer to a timespec data structure.
DESCRIPTION
The clock_gettime function returns the current time (in seconds and nanoseconds) for the specified clock. The clock_settime function sets the specified clock. The CLOCK_REALTIME clock measures the amount of time elapsed since 00:00:00:00 January 1, 1970 Greenwich Mean Time (GMT), otherwise known as the Epoch. Time values that fall between two non-negative integer multiples of the resolution are truncated down to the smaller multiple of the resolution.
You must have superuser privileges to use the clock_settime function.
RETURN VALUES
On a successful call to the clock_gettime or clock_settime functions, a value of 0 is returned.
On an unsuccessful call, a value of −1 is returned and errno is set to indicate that an error occurred.
ERRORS
The clock_gettime, and clock_settime, functions fail under the following conditions:
[EINVAL] The clock_id argument does not specify a known clock. The value pointed to by the tp argument to the clock_settime function is outside the range for the given clock_id. The tp argument specified a nanosecond value less than zero or greater than or equal to 1000 million.
[EPERM] The requesting process does not have the appropriate privilege to set the specified clock.
[ENOSYS] The functions clock_gettime and clock_settime are not supported by this implementation.
RELATED INFORMATION
Functions: time(1), clock_getres(3), ctime(3), timer_gettime(3)