Namespaces
Variants

timespec_getres

From cppreference.net
Definido en el encabezado <time.h>
int timespec_getres ( struct timespec * ts, int base ) ;
(desde C23)

Si ts no es nulo y base es compatible con timespec_get , modifica * ts para contener la resolución temporal proporcionada por timespec_get para base . Para cada base compatible, múltiples llamadas a timespec_getres durante la misma ejecución del programa producen resultados idénticos.

Contenidos

Parámetros

ts - puntero a un objeto de tipo struct timespec
base - TIME_UTC u otro valor entero distinto de cero que indica la base de tiempo

Valor de retorno

El valor de base si base es compatible, cero en caso contrario.

Notas

La función POSIX clock_getres(clock_id, ts) también puede utilizarse para llenar una estructura timespec con la resolución del tiempo identificado por clock_id .

Ejemplo

#include <stdio.h>
#include <time.h>
int main(void)
{
    char buff[128];
    struct timespec ts;
    const int res = timespec_getres(&ts, TIME_UTC);
    if (res == TIME_UTC) {
        struct tm timer;
        strftime(buff, sizeof buff, "%D %T", gmtime_r(&ts.tv_sec, &timer));
        printf("Time resolution info: %s.%09ld UTC\n", buff, ts.tv_nsec);
    } else {
        printf("TIME_UTC base is not supported.");
    }
}

Salida posible:

Time resolution info: 01/01/70 00:00:00.000000001 UTC

Véase también

tiempo en segundos y nanosegundos
(struct)
devuelve el tiempo calendario en segundos y nanosegundos basado en una base de tiempo dada
(function)
devuelve el tiempo calendario actual del sistema como tiempo desde el epoch
(function)