Udostępnij przez


timespec_get, , _timespec32_get_timespec64_get

Ustawia interwał wskazywany przez pierwszy argument do bieżącego czasu kalendarza na podstawie określonej bazy czasu.

Składnia

int timespec_get( // See note in remarks section about linkage
    struct timespec* const time_spec,
    int const base
);
int _timespec32_get(
    struct _timespec32* const time_spec,
    int const base
);
int _timespec64_get(
    struct _timespec64* const time_spec,
    int const base
);

Parametry

time_spec
Wskaźnik do struktury ustawionej na czas w sekundach i nanosekundach od początku epoki.

base
Niezerowa wartość specyficzna dla implementacji, która określa bazę czasową.

Wartość zwracana

Wartość w przypadku powodzenia base , w przeciwnym razie zwraca zero.

Uwagi

Funkcje timespec_get ustawiają bieżący czas w strukturę wskazywaną time_spec przez argument . Wszystkie wersje tej struktury mają dwa elementy członkowskie tv_sec i tv_nsec. Wartość tv_sec jest ustawiona na liczbę całkowitą sekund i tv_nsec całkowitą liczbę nanosekund zaokrąglonych do rozdzielczości zegara systemowego, od początku epoki określonej przez base.

Specyficzne dla firmy Microsoft

Te funkcje obsługują tylko TIME_UTCbase wartość . TIME_UTC time_spec Ustawia wartość na liczbę sekund i nanosekund od początku epoki, Midnight, 1 stycznia 1970, Koordynowany uniwersalny czas (UTC). W elemecie _timespec32tv_sec jest wartością__time32_t. W elemecie _timespec64tv_sec jest wartością__time64_t. W obiekcie jest typem timespectv_sectime_t, który jest 32 bity lub 64 bity długości w zależności od tego, czy makro preprocesora _USE_32BIT_TIME_T jest zdefiniowane. Funkcja timespec_get jest funkcją śródliniową, która wywołuje _timespec32_get metodę , jeśli _USE_32BIT_TIME_T jest zdefiniowana; w przeciwnym razie wywołuje funkcję _timespec64_get.

Koniec specyficzny dla firmy Microsoft

Domyślnie stan globalny tej funkcji jest zakresem aplikacji. Aby zmienić to zachowanie, zobacz Stan globalny w CRT.

Uwaga / Notatka

W przypadku korzystania z zestawu Windows SDK w wersji 10.0.26100.6901 i Visual Studio 2026 lub nowszej timespec_get nie jest już static inline (połączenie wewnętrzne). Zamiast tego jest inline to (połączenie zewnętrzne).
Aby powrócić do poprzedniego zachowania, #define _STATIC_INLINE_UCRT_FUNCTIONS=1 przed dołączeniem dowolnych nagłówków CRT. Domyślnie _STATIC_INLINE_UCRT_FUNCTIONS jest ustawiona wartość 0.
Ta zmiana zwiększa zgodność UCRT ze standardem C++ i poprawia zgodność z modułami języka C++.

Wymagania

Procedura Wymagany nagłówek
timespec_get, , _timespec32_get_timespec64_get C: <time.h>, C++: <ctime> lub <time.h>

Aby uzyskać więcej informacji o zgodności, zobacz Zgodność.

Zobacz też

Zarządzanie czasem
asctime, _wasctime
asctime_s, _wasctime_s
_ftime, , _ftime32_ftime64
gmtime, , _gmtime32_gmtime64
gmtime_s, , _gmtime32_s_gmtime64_s
localtime, , _localtime32_localtime64
localtime_s, , _localtime32_s_localtime64_s
time, , _time32_time64
_utime, , _utime32, _utime64, _wutime, , _wutime32_wutime64