Namespaces
Variants

timespec_get

From cppreference.net
Definido en el encabezado <time.h>
int timespec_get ( struct timespec * ts, int base ) ;
(1) (desde C11)
#define TIME_UTC /* definido por la implementación */
(2) (desde C11)
1) Modifica el objeto timespec apuntado por ts para contener el tiempo calendario actual en la base de tiempo base .
2) Se expande a un valor adecuado para usar como el argumento base de timespec_get

Otras constantes macro que comienzan con TIME_ pueden ser proporcionadas por la implementación para indicar bases de tiempo adicionales

Si base es TIME_UTC , entonces

  • ts - > tv_sec se establece al número de segundos desde una época definida por la implementación, truncado a un valor entero
  • ts - > tv_nsec se establece al número integral de nanosegundos, redondeado a la resolución del reloj del sistema

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 tiene éxito, cero en caso contrario.

Notas

La función POSIX clock_gettime(CLOCK_REALTIME, ts) también puede utilizarse para llenar una estructura timespec con el tiempo transcurrido desde la Época.

Ejemplo

#include <stdio.h>
#include <time.h>
int main(void)
{
    struct timespec ts;
    timespec_get(&ts, TIME_UTC);
    char buff[100];
    strftime(buff, sizeof buff, "%D %T", gmtime(&ts.tv_sec));
    printf("Current time: %s.%09ld UTC\n", buff, ts.tv_nsec);
}

Salida posible:

Current time: 02/18/15 14:34:03.048508855 UTC

Referencias

  • Estándar C23 (ISO/IEC 9899:2024):
  • 7.27.2.5 La función timespec_get (p: TBD)
  • Estándar C17 (ISO/IEC 9899:2018):
  • 7.27.2.5 La función timespec_get (p: 286)
  • Estándar C11 (ISO/IEC 9899:2011):
  • 7.27.2.5 La función timespec_get (p: 390)

Véase también

tiempo en segundos y nanosegundos
(struct)
devuelve la resolución del tiempo calendario basado en una base de tiempo dada
(function)
devuelve el tiempo calendario actual del sistema como tiempo desde época
(function)
Documentación de C++ para timespec_get