Dela via


timespec_get, _timespec32_get_timespec64_get

Anger intervallet som pekas på av det första argumentet till den aktuella kalendertiden, baserat på den angivna tidsbasen.

Syntax

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
);

Parameterar

time_spec
Pekare till en struct som är inställd på tiden i sekunder och nanosekunder sedan epokens början.

base
Ett implementeringsspecifikt värde som inte är noll och som anger tidsbasen.

Returvärde

Värdet för base om det lyckas returnerar annars noll.

Anmärkningar

Funktionerna timespec_get anger den aktuella tiden i den struct som argumentet pekar på time_spec . Alla versioner av den här structen har två medlemmar och tv_sectv_nsec. Värdet tv_sec är inställt på hela antalet sekunder och tv_nsec det integrerade antalet nanosekunder, avrundat till systemklockans upplösning, sedan starten av epoken som anges av base.

Microsoft-specifik

Dessa funktioner stöder endast TIME_UTC som base värde. TIME_UTC time_spec anger värdet till antalet sekunder och nanosekunder sedan epokstarten, Midnight, 1 januari 1970, Coordinated Universal Time (UTC). I är _timespec32är tv_sec ett __time32_t värde. I är _timespec64är tv_sec ett __time64_t värde. I är timespecen , tv_sec en time_t typ som är 32 bitar eller 64 bitar lång beroende på om makrot för processorn _USE_32BIT_TIME_T har definierats. Funktionen timespec_get är en infogad funktion som anropar _timespec32_get om _USE_32BIT_TIME_T den har definierats. Annars anropas _timespec64_get.

Avsluta Microsoft-specifik

Som standard är den här funktionens globala tillstånd begränsat till programmet. Information om hur du ändrar det här beteendet finns i Globalt tillstånd i CRT.

Anmärkning

När du använder Windows SDK version 10.0.26100.6901 och Visual Studio 2026 eller senare tillsammans, timespec_get är inte längre static inline (intern länkning). I stället är inline det (extern länkning).
För att återgå till det tidigare beteendet, #define _STATIC_INLINE_UCRT_FUNCTIONS=1 innan du inkluderar några CRT-huvuden. Som standard _STATIC_INLINE_UCRT_FUNCTIONS är värdet 0.
Den här ändringen ökar UCRT-överensstämmelsen med C++-standarden och förbättrar kompatibiliteten med C++-moduler.

Kravspecifikation

Rutin Obligatoriskt huvud
timespec_get, _timespec32_get_timespec64_get C: <time.h>, C++: <ctime> eller <time.h>

Mer kompatibilitetsinformation finns i Kompatibilitet.

Se även

Tidshantering
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