timespec_getres
Определено в заголовке <time.h> | ||
|---|---|---|
int timespec_getres( struct timespec *ts, int base ); | (с C23) |
Если ts не является нулевым указателем и base поддерживается timespec_get, модифицирует *ts для хранения разрешения времени, предоставляемого timespec_get для base. Для каждого поддерживаемого base, многократные вызовы timespec_getres в рамках одного выполнения программы дают одинаковый результат.
Параметры
| ts | - | указатель на объект типа struct timespec |
| base | - | TIME_UTC или другое ненулевое целое значение, указывающее временную базу |
Возвращаемое значение
Значение base , если base поддерживается, в противном случае ноль.
Примечания
Функция POSIX clock_getres(clock_id, ts) также может использоваться для заполнения timespec разрешением времени, определённым clock_id.
Пример
#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.");
}
}Возможный вывод:
Time resolution info: 01/01/70 00:00:00.000000001 UTC
См. также
|
(C11) | время в секундах и наносекундах (структура) |
|
(C11) | возвращает время календаря в секундах и наносекундах, основанное на заданной временной базе (функция) |
| возвращает текущее календарное время системы как время с момента эпохи (функция) |
© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/w/c/chrono/timespec_getres