Compartir a través de


system_clock (estructura)

Reloj basado en el reloj en tiempo real del sistema.

Sintaxis

struct system_clock;

Comentarios

Este reloj representa el reloj del sistema.

system_clock no es monotónico ni estable.

Un reloj es monotónico si el valor devuelto por la primera llamada a now() siempre es menor o igual que el valor devuelto por una llamada posterior a now(). system_clock no es monotonico porque la hora del sistema se puede ajustar entre las llamadas a now().

Un reloj es constante si es monotónico y si el tiempo entre los ciclos de reloj es constante. Dado que system_clock no es monotónico, no es constante, aunque el tiempo entre tics del reloj sea constante. Solo puede usar un reloj estable para tomar el tiempo antes de un evento, el tiempo después de un evento y restarlos de forma fiable para obtener la duración del evento, pues el reloj estable no se ajustaría durante ese tiempo.

Miembros

Alias de tipo de conveniencia

Nombre Descripción
system_clock::duration En la implementación de Microsoft es un sinónimo de duration<long long, ratio<1, 10'000'000>. Representa una duración de tiempo medida en unidades de 100 nanosegundos.
system_clock::period En la implementación de Microsoft es un sinónimo de ratio<1, 10'000'000>. Representa el tiempo en fracciones de segundo (100 nanosegundos) entre cada tic del intervalo.
system_clock::rep Sinónimo de long long. Es el tipo usado para representar las unidades integrales de system_clock::duration de este reloj.
system_clock::time_point Sinónimo de time_point<system_clock>. Representa un time_point para este reloj.

Relacionados

Nombre Descripción
sys_days Sinónimo de using sys_days = sys_time<days>. Recuento de días, representado por un time_point que está asociado a system_clock. Definido en std::chrono
sys_seconds Sinónimo de using sys_seconds = sys_time<seconds>. Recuento de segundos, representado por un time_point que está asociado a system_clock. Definido en std::chrono
sys_time Sinónimo de template <class Duration> using sys_time = time_point<system_clock, Duration>. Representa un time_point para un system_clock. Especifique la duración. Definido en std::chrono.

Métodos públicos

Nombre Descripción
from_time_t Estática. Devuelve el time_point de system_clock que más se aproxima a una time_t especificada.
now Estática. Devuelve la hora actual.
to_time_t Estática. Devuelve un objeto time_t que más se aproxima a la time_point especificada.

Constantes públicas

Nombre Descripción
system_clock::is_steady Indica si el tipo de reloj es constante. Es false.

Requisitos

Encabezado: <chrono>

Espacio de nombres: std::chrono

from_time_t

Método estático que devuelve el time_point que más se aproxima a la hora representada por Tm.

static time_point from_time_t(time_t Tm) noexcept;

Parámetros

Tm
Un objeto time_t.

is_steady

Valor estático que especifica si el tipo del reloj es constante. Dado que el system_clock no es estable, no se puede usar este reloj para tomar el tiempo antes de un evento, el tiempo después de un evento y restarlos de forma fiable para obtener la duración del evento, porque el reloj podría ajustarse durante ese intervalo de tiempo.

static const bool is_steady = false;

Valor devuelto

En esta implementación, system_clock::is_steady siempre devuelve false.

Comentarios

Un reloj es estable si es monotónico y si el tiempo entre los tics del reloj es constante. system_clock no es monotónico porque el valor devuelto por una primera llamada a now() no siempre es menor o igual que el valor devuelto por una llamada posterior a now() porque la hora del sistema se puede ajustar sin previo aviso.

now

Método estático que devuelve la hora actual del reloj del sistema.

static time_point now() noexcept;

Valor devuelto

time_point representa la hora actual.

to_time_t

Método estático que devuelve el time_t que más se aproxima a la hora representada por Time.

static time_t to_time_t(const time_point& Time) noexcept;

Parámetros

Time
Un objeto time_point.

Consulte también

<chrono>
file_clock class
high_resolution_clock
Estructura steady_clock
Clase tai_clock
Clase utc_clock
Referencia de archivos de encabezado