Estrutura system_clock
Um relógio baseado no relógio de tempo real do sistema.
Sintaxe
struct system_clock;
Comentários
Este relógio representa o relógio de parede de todo o sistema.
O system_clock
não é monotônico ou estável.
Um relógio é monotônico se o valor retornado por uma primeira chamada para now()
for sempre menor ou igual ao valor retornado por uma chamada posterior para now()
. O system_clock
não é monotônico porque a hora do sistema pode ser ajustada entre chamadas para now()
.
Um relógio será estável se ele for monotônico e se o tempo entre os tiques do relógio for constante. Como o system_clock
não é monotônico, ele não é estável, embora o tempo entre tiques de relógio seja constante. Você só pode usar um relógio estável para tomar o tempo antes de um evento, o tempo depois de um evento e subtraí-los de forma confiável para obter a duração do evento, porque um relógio estável não será ajustado durante esse tempo.
Membros
Aliases de tipo de conveniência
Nome | Descrição |
---|---|
system_clock::duration |
Na implementação da Microsoft, isso é sinônimo de duration<long long, ratio<1, 10'000'000> . Isso representa uma duração de tempo medida em unidades de 100 nanossegundos. |
system_clock::period |
Na implementação da Microsoft, isso é sinônimo de ratio<1, 10'000'000> . Representa o tempo em frações de segundo (100 nanossegundos) entre cada tique na duração. |
system_clock::rep |
Um sinônimo de long long . É o tipo usado para representar as unidades integrais no system_clock::duration deste relógio. |
system_clock::time_point |
Um sinônimo de time_point<system_clock> . Representa um time_point para este relógio. |
Relacionado
Nome | Descrição |
---|---|
sys_days |
Um sinônimo de using sys_days = sys_time<days> . Uma contagem de dias, representada por um time_point que está associado a um system_clock . Definido em std::chrono |
sys_seconds |
Um sinônimo de using sys_seconds = sys_time<seconds> . Uma contagem de segundos, representada por um time_point associado a um system_clock . Definido em std::chrono |
sys_time |
Um sinônimo de template <class Duration> using sys_time = time_point<system_clock, Duration> . Representa um time_point para um system_clock . Você especifica a duração. Definido em std::chrono . |
Métodos públicos
Nome | Descrição |
---|---|
from_time_t |
Estático. Retorna um time_point para um system_clock que mais se aproxima do time_t especificado. |
now |
Estático. Retorna o tempo atual. |
to_time_t |
Estático. Retorna um objeto time_t que mais se aproxima do time_point especificado. |
Constantes públicas
Nome | Descrição |
---|---|
system_clock::is_steady |
Indica se o tipo de relógio é estável. Ele é false |
Requisitos
Cabeçalho: <chrono>
Namespace: std::chrono
from_time_t
Método estático que retorna um time_point que mais se aproxima do tempo representado por Tm.
static time_point from_time_t(time_t Tm) noexcept;
Parâmetros
Tm
Um objeto time_t.
is_steady
Um valor estático que especifica se o tipo de relógio é estável. Como o system_clock
não é constante, você não pode usar este relógio para calcular o tempo antes de um evento, o tempo depois de um evento e subtraí-los de forma confiável para obter a duração do evento porque o relógio pode ser ajustado durante o intervalo de tempo.
static const bool is_steady = false;
Valor de retorno
Nessa implementação, system_clock::is_steady
sempre retorna false
.
Comentários
Um relógio é estável se for monotônico e se o tempo entre os tiques do relógio for constante. O system_clock
não é monotônico porque o valor retornado por uma primeira chamada para now()
nem sempre é menor ou igual ao valor retornado por uma chamada posterior para now()
porque a hora do sistema pode ser ajustado sem aviso prévio.
now
Método estático que retorna a hora atual do relógio de parede do sistema.
static time_point now() noexcept;
Valor de retorno
Um time_point que representa a hora atual.
to_time_t
Método estático que retorna um time_t
que mais se aproxima da hora representada por Time.
static time_t to_time_t(const time_point& Time) noexcept;
Parâmetros
Time
Um objeto time_point
.
Confira também
<chrono>
file_clock class
high_resolution_clock
Struct steady_clock
tai_clock
classe
utc_clock
classe
Referência de Arquivos de Cabeçalho