Klasa file_clock
Ten zegar może reprezentować zakres i rozdzielczość wartości czasu pliku używanych w systemie plików.
Składnia
using file_clock = std::filesystem::_File_time_clock; // C++20
Uwagi
W implementacji firmy Microsoft epoka lub czas file_clock
rozpoczęcia pomiaru wynosi 1/1/1601 00:00:00.
Standard ISO C++ zapewnia wybór między parametrami i to_sys()
, a to_utc()
from_utc()
.from_sys()
Implementacja firmy Microsoft wybrała to_utc i from_utc.
Elementy członkowskie
Nazwa/nazwisko | opis |
---|---|
from_utc |
Statyczny. Konwertuje element na utc_time .file_time |
now |
Statyczny. Zwraca bieżący czas międzynarodowego niepodzielnego. |
to_utc |
Statyczny. Konwertuje element na file_time utc_time . |
Inne niż elementy członkowskie
Nazwa/nazwisko | opis |
---|---|
from_stream |
Przeanalizuj element file_clock z danego strumienia przy użyciu określonego formatu. |
operator<< |
Dane wyjściowe file_time do danego strumienia. |
Aliasy typu wygody
Nazwa/nazwisko | opis |
---|---|
file_clock::duration |
W implementacji firmy Microsoft jest to synonim .duration<long long, ratio<1, 10'000'000> Reprezentuje czas trwania mierzony w jednostkach 100 nanosekund. |
file_clock::time_point |
Synonim dla elementu time_point<File_time_clock> . Służy do reprezentowania elementu dla tego zegara time_point . |
file_clock::period |
W implementacji firmy Microsoft jest to synonim .ratio<1, 10'000'000> Reprezentuje czas w sekundach (100 nanosekund) między poszczególnymi znacznikami czasu trwania. |
file_clock::rep |
Synonim typu (long long ) używanego do reprezentowania jednostek całkowitych w tym zegarze file_clock::duration . |
Powiązane
Nazwa/nazwisko | opis |
---|---|
file_time |
Synonim dla elementu time_point<file_clock, Duration> . Reprezentuje element time_point dla elementu file_clock . Należy określić element Duration . Zdefiniowane w std::chrono |
Stałe publiczne
Nazwa/nazwisko | opis |
---|---|
file_clock::is_steady constant |
Wskazuje, czy typ zegara jest stały. Jego wartość to false . |
Wymagania
Nagłówek: <chrono>
(od C++20)
Przestrzeń nazw: std::chrono
Opcja kompilatora: /std:c++latest
from_utc
Metoda statyczna, która konwertuje utc_time
element na .file_time
template <class Duration>
static file_time<common_type_t<_Duration, chrono::seconds>>
from_utc(const utc_time<Duration>& t);
Parametry
t
Element utc_time
do konwersji.
Wartość zwracana
Element file_time
reprezentujący odpowiednik utc_time
elementu .t
Jest on obliczany jako utc_clock::to_sys(utc_time).time_since_epoch()
minus liczba sekund przestępnych przed 1 stycznia 2017 r. (27). Systemy Windows 10 w wersji 1809 i Windows Server 2019 wprowadziły obsługę sekund przestępnych. Ta obsługa jest domyślnie włączona, chociaż można ją wyłączyć. Po włączeniu tej opcji w okresie od 1 stycznia 2017 r. do lipca 2018 r. są uwzględniane tylko sekundy przestępne po lipcu 2018 r. (a nie w okresie od 1 stycznia 2017 r. do lipca 2018 r.).
Zalecamy konwertowanie std::chrono::clock_cast
punktów czasu między zegarami, a nie bezpośrednie wywoływanie tej funkcji. Jest to szczególnie istotne, file_clock
ponieważ standard ISO C++ umożliwia temu typowi definiowanie elementów to_utc
i , from_utc
lub i from_sys
to_sys
. Ponieważ implementacja może się różnić w zależności od dostawcy, można użyć jej zamiast clock_cast
tego, która jest dostarczana przez wszystkich dostawców bibliotek.
Przykład: from_utc
// compile using: /std:c++latest
#include <iostream>
#include <chrono>
using namespace std::chrono;
int main()
{
std::cout << clock_cast<file_clock>(utc_clock::now());
return 0;
}
2021-08-17 00:20:41.2594557
to_utc
Metoda statyczna, która konwertuje file_time
element na .utc_time
template <class Duration>
static utc_time<common_type_t<Duration, seconds>>
to_utc(const file_time<Duration>& t);
Parametry
t
Element file_time
do konwersji.
Wartość zwracana
Element utc_time
reprezentujący odpowiednik file_time
elementu .t
Zalecamy konwertowanie std::chrono::clock_cast
punktów czasowych między zegarami, a nie bezpośrednie wywoływanie tej funkcji. Jest to szczególnie istotne, file_clock
ponieważ standard ISO C++ umożliwia temu typowi definiowanie elementów to_utc
i , from_utc
lub i from_sys
to_sys
. Ponieważ implementacja może się różnić w zależności od dostawcy, można użyć jej zamiast clock_cast
tego, która jest dostarczana przez wszystkich dostawców bibliotek.
Przykład: to_utc
// compile using: /std:c++latest
#include <iostream>
#include <chrono>
using namespace std::chrono;
int main()
{
std::cout << clock_cast<std::chrono::utc_clock>(file_clock::now());
return 0;
}
2021-08-17 00:20:41.2594557
is_steady
Wartość statyczna określająca, czy typ zegara jest stały. W implementacji is_steady
firmy Microsoft jest .false
Sprawia to, że zegar jest nieodpowiedni do pomiaru, jak długo trwa operacja, ponieważ niezłomny zegar można dostosować, podczas gdy jesteś coś w czasie, więc mierzony czas może być wyłączony, a nawet ujemny. Zamiast tego należy użyć elementu do high_resolution_clock
czasu zdarzeń.
static const bool is_steady = false;
teraz
Metoda statyczna zwracająca bieżący czas systemowy z rozdzielczością nanosekundową skorygowaną przez epokę file_clock
.
static time_point now() noexcept;
Wartość zwracana
Obiekt time_point reprezentujący bieżący czas.
Zobacz też
<chrono>
gps_clock class
high_resolution_clock
local_t
Struct
steady_clock
Struct
system_clock
Struct
Klasa tai_clock
Klasa utc_clock
Odwołanie do plików nagłówka
Opinia
https://aka.ms/ContentUserFeedback.
Dostępne już wkrótce: W 2024 r. będziemy stopniowo wycofywać zgłoszenia z serwisu GitHub jako mechanizm przesyłania opinii na temat zawartości i zastępować go nowym systemem opinii. Aby uzyskać więcej informacji, sprawdź:Prześlij i wyświetl opinię dla