file_clock
-Klasse
Diese Uhr kann den Bereich und die Auflösung der im Dateisystem verwendeten Dateizeitwerte darstellen.
Syntax
using file_clock = std::filesystem::_File_time_clock; // C++20
Hinweise
In der Microsoft-Implementierung, der Epoche oder der Zeit, ab der die file_clock
Messzeit beginnt, ist 1/1/1601 00:00:00.
Der ISO C++-Standard bietet eine Wahl zwischen Bereitstellung to_sys()
und from_sys()
, oder to_utc()
und from_utc()
. Die Microsoft-Implementierung hat to_utc und from_utc ausgewählt.
Mitglieder
Name | Beschreibung |
---|---|
from_utc |
Statisch. Konvertiert ein utc_time -Element in ein file_time -Element. |
now |
Statisch. Gibt die aktuelle internationale Atomzeit zurück. |
to_utc |
Statisch. Konvertiert ein file_time in utc_time . |
Nicht-Member
Name | Beschreibung |
---|---|
from_stream |
Analysieren Eines file_clock aus dem angegebenen Datenstrom mithilfe des angegebenen Formats. |
operator<< |
Ausgabe file_time an den angegebenen Datenstrom. |
Komforttypaliasen
Name | Beschreibung |
---|---|
file_clock::duration |
In der Implementierung von Microsoft ist es ein Synonym für duration<long long, ratio<1, 10'000'000> . Sie stellt eine Zeitdauer dar, die in Einheiten von 100 Nanosekunden gemessen wird. |
file_clock::time_point |
Ein Synonym für time_point<File_time_clock> . Wird verwendet, um eine time_point für diese Uhr darzustellen. |
file_clock::period |
In der Implementierung von Microsoft ist es ein Synonym für ratio<1, 10'000'000> . Sie stellt die Zeit in Sekunden (100 Nanosekunden) zwischen jedem Teilstrich in der Dauer dar. |
file_clock::rep |
Ein Synonym für den Typ (long long ), der verwendet wird, um die integralen Einheiten in dieser Uhr file_clock::duration darzustellen. |
Related
Name | Beschreibung |
---|---|
file_time |
Ein Synonym für time_point<file_clock, Duration> . Stellt ein time_point für ein file_clock . Sie geben die Duration . Definiert in std::chrono |
Öffentliche Konstanten
Name | Beschreibung |
---|---|
file_clock::is_steady constant |
Gibt an, ob der Takttyp stabil ist. Sein Wert lautet false . |
Anforderungen
Header: <chrono>
(seit C++20)
Namespace:std::chrono
Compileroption: /std:c++latest
from_utc
Statische Methode, die eine utc_time
in eine file_time
.
template <class Duration>
static file_time<common_type_t<_Duration, chrono::seconds>>
from_utc(const utc_time<Duration>& t);
Parameter
t
Die zu konvertierende utc_time
.
Rückgabewert
A file_time
, das die Entsprechung utc_time
als t
. Es wird mit utc_clock::to_sys(utc_time).time_since_epoch()
minus der Anzahl der Schaltsekunden vor dem 1. Januar 2017 (27) berechnet. Windows 10, Version 1809 und Windows Server 2019, haben unterstützung für Schaltsekunden eingeführt. Diese Unterstützung ist standardmäßig aktiviert, kann jedoch deaktiviert werden. Wenn diese Option aktiviert ist, sind nur Schaltsekunden nach Juli 2018 (nicht die zwischen dem 1. Januar 2017 und Juli 2018) enthalten.
Es wird empfohlen std::chrono::clock_cast
, Zeitpunkte zwischen Takten zu konvertieren, anstatt diese Funktion direkt aufzurufen. Dies ist besonders relevant, file_clock
da der ISO C++-Standard diesen Typ to_utc
entweder und from_utc
, oder und to_sys
und .from_sys
Da die Implementierung je nach Anbieter variieren kann, können Sie stattdessen verwenden clock_cast
, was von allen Bibliotheksanbietern bereitgestellt wird.
Beispiel: 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
Statische Methode, die eine file_time
in eine utc_time
.
template <class Duration>
static utc_time<common_type_t<Duration, seconds>>
to_utc(const file_time<Duration>& t);
Parameter
t
Die zu konvertierende file_time
.
Rückgabewert
A utc_time
, das die Entsprechung file_time
als t
. Es wird empfohlen std::chrono::clock_cast
, Zeitpunkte zwischen Uhren zu konvertieren, anstatt diese Funktion direkt aufzurufen. Dies ist besonders relevant, file_clock
da der ISO C++-Standard diesen Typ to_utc
entweder und from_utc
, oder und to_sys
und .from_sys
Da die Implementierung je nach Anbieter variieren kann, können Sie stattdessen verwenden clock_cast
, was von allen Bibliotheksanbietern bereitgestellt wird.
Beispiel: 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
Ein statischer Wert, der angibt, ob der Uhrtyp gleichmäßig ist. In der Microsoft-Implementierung is_steady
lautet false
. Dies macht diese Uhr ungeeignet, um zu messen, wie lange ein Vorgang dauert, da eine unaufdinge Uhr angepasst werden kann, während Sie etwas zeitlich planen, sodass die gemessene Zeit deaktiviert oder sogar negativ sein kann. Verwenden Sie stattdessen ein high_resolution_clock
, um Ereignisse zu zeitieren.
static const bool is_steady = false;
now
Statische Methode, die die aktuelle Systemzeit mit Nanosekundenauflösung zurückgibt, angepasst durch die Epoche der file_clock
.
static time_point now() noexcept;
Rückgabewert
Ein time_point-Objekt, das die aktuelle Uhrzeit darstellt.
Siehe auch
<chrono>
gps_clock class
high_resolution_clock
local_t
-Struktur
steady_clock
-Struktur
system_clock
-Struktur
tai_clock
-Klasse
utc_clock
-Klasse
Headerdateienreferenz