Namespaces
Variants

timespec_getres

From cppreference.net
Défini dans l'en-tête <time.h>
int timespec_getres ( struct timespec * ts, int base ) ;
(depuis C23)

Si ts est non nul et que base est pris en charge par timespec_get , modifie * ts pour contenir la résolution temporelle fournie par timespec_get pour base . Pour chaque base pris en charge, plusieurs appels à timespec_getres durant la même exécution du programme produisent des résultats identiques.

Table des matières

Paramètres

ts - pointeur vers un objet de type struct timespec
base - TIME_UTC ou une autre valeur entière non nulle indiquant la base de temps

Valeur de retour

La valeur de base si base est pris en charge, zéro sinon.

Notes

La fonction POSIX clock_getres(clock_id, ts) peut également être utilisée pour remplir une structure timespec avec la résolution temporelle identifiée par clock_id .

Exemple

#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.");
    }
}

Sortie possible :

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

Voir aussi

temps en secondes et nanosecondes
(struct)
retourne le temps calendaire en secondes et nanosecondes basé sur une base de temps donnée
(function)
retourne le temps calendaire actuel du système comme temps depuis l'époque
(function)