Scroll to navigation

std::chrono::high_resolution_clock(3) C++ Standard Libary std::chrono::high_resolution_clock(3)

NAME

std::chrono::high_resolution_clock - std::chrono::high_resolution_clock

Synopsis


Defined in header <chrono>
class high_resolution_clock; (since C++11)


Class std::chrono::high_resolution_clock represents the clock with the smallest tick
period provided by the implementation. It may be an alias of
std::chrono::system_clock or std::chrono::steady_clock, or a third, independent
clock.


std::chrono::high_resolution_clock meets the requirements of TrivialClock.

Member types


Member type Definition
rep arithmetic type representing the number of ticks in the clock's duration
period a std::ratio type representing the tick period of the clock, in seconds
duration std::chrono::duration<rep, period>
time_point std::chrono::time_point<std::chrono::high_resolution_clock>

Member constants


true if the time between ticks is always constant, i.e.
constexpr bool is_steady calls to now() return values that increase monotonically
[static] even in case of some external clock adjustment, otherwise
false
(public static member constant)

Member functions


now returns a std::chrono::time_point representing the current value of the
[static] clock
(public static member function)

Notes


The high_resolution_clock is not implemented consistently across different standard
library implementations, and its use should be avoided. It is often just an alias
for std::chrono::steady_clock or std::chrono::system_clock, but which one it is
depends on the library or configuration. When it is a system_clock, it is not
monotonic (e.g., the time can go backwards). For example, for gcc's libstdc++ it is
system_clock, for MSVC it is steady_clock, and for clang's libc++ it depends on
configuration.


Generally one should just use std::chrono::steady_clock or std::chrono::system_clock
directly instead of std::chrono::high_resolution_clock: use steady_clock for
duration measurements, and system_clock for wall-clock time.

See also


system_clock wall clock time from the system-wide realtime clock
(C++11) (class)
steady_clock monotonic clock that will never be adjusted
(C++11) (class)

2022.07.31 http://cppreference.com