FreeBSD Manual Pages
std::chrono...ution_clock(3) C++ Standard Libary std::chrono...ution_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 Triv- ialClock. 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_resolu- tion_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 adjust- ment, 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 There has been some controversy around the use of high_resolu- tion_clock. Howard Hinnant, who claims to have introduced high_resolution_clock to the language, stated in 2016 on the ISO C++ Standard - Discussion mailing list that he was in favor of deprecating it. His rationale was that, because the standard allows for it to be an alias for std::chrono::steady_clock or std::chrono::system_clock, its use adds uncertainty to a program without benefit. However, other partici- pants in the thread spoke out its favor, for instance on the basis that, because neither std::chrono::steady_clock nor std::chrono::system_clock come with any particular resolution guarantees, high_resolution_clock serves a useful role by giving the vendor an opportunity to supply the platform's highest-resolution clock, when neither its std::chrono::steady_clock nor its std::chrono::sys- tem_clock would be that. It is often just an alias for std::chrono::steady_clock or std::chrono::system_clock, but which one it is depends on the li- brary or configuration. When it is a system_clock, it is not monotonic (e.g., the time can go backwards). For example, as of 2023, libstdc++ has it aliased to system_clock "until higher-than-nanosecond definitions become feasible"^[1], MSVC has it as steady_clock^[2], and libc++ uses steady_clock when the C++ standard library implementation supports a monotonic clock and system_clock other- wise^[3]. 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) External links 1. libstdc++ <chrono.h> 2. msvc high_resolution_clock 3. libc++ <high_resolution_clock.h> http://cppreference.com 2024.06.10 std::chrono...ution_clock(3)
NAME | Synopsis | Member types | Member constants | Member functions | Notes | See also | External links
Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=std::chrono::high_resolution_clock&sektion=3&manpath=FreeBSD+Ports+15.1.quarterly>
