clock_getres - Linux


clock_getres retrieves the resolution (precision) of the specified clock. A clock has a monotonically increasing value, which can be used to measure time intervals.


clock_getres(clock_id, res)


| Option | Description | Default |
| clock_id | The ID of the clock to query | Can be values like CLOCK_REALTIME, CLOCK_MONOTONIC, etc. |
| res | A pointer to a timespec structure to receive the resolution | N/A |


// Get the resolution of the real-time clock
struct timespec res;
clock_getres(CLOCK_REALTIME, &res);
printf("Resolution: %ld.%09ld seconds\n", res.tv_sec, res.tv_nsec);

Common Issues

  • Incorrect clock ID: Ensure that the provided clock_id is a valid clock supported by the system.
  • Invalid pointer: Verify that the res parameter is a valid pointer to a timespec structure.


clock_getres can be used with other time-related functions, such as clock_gettime and clock_nanosleep, to create precise timing mechanisms.

Related Commands

  • clock_gettime: Gets the current time from a specified clock.
  • clock_nanosleep: Suspends the calling thread for a specified amount of time.