std::chrono::high_resolution_clock

来自cppreference.com
< cpp‎ | chrono
 
 
 
日期和时间工具
(C++11)
(C++11)
时钟
high_resolution_clock
(C++11)
(C++20)
                                                  
(C++20)
(C++20)
(C++20)
(C++20)
(C++20)
日历
(C++20)
(C++20)
(C++20)
(C++20)
(C++20)
时区
(C++20)
(C++20)
(C++20)
(C++20)
(C++20)
(C++20)
C 风格日期和时间
 
std::chrono::high_resolution_clock
 
定义于头文件 <chrono>
class high_resolution_clock;
(C++11 起)

std::chrono::high_resolution_clock 表示实现提供的拥有最小计次周期的时钟。它可以是 std::chrono::system_clockstd::chrono::steady_clock 的别名,或第三个独立时钟。

std::chrono::high_resolution_clock 满足平凡时钟 (TrivialClock) 的要求。

目录

[编辑] 成员类型

 
成员类型 定义
rep 表示时钟的时期中计次数的算术类型
period 表示时钟计次周期的 std::ratio 类型,单位为秒
duration std::chrono::duration<rep, period>
time_point std::chrono::time_point<std::chrono::high_resolution_clock>

[编辑] 成员常量

constexpr bool is_steady
[静态]
若时间间隔计次始终为常量,即纵使在外部时钟调整的情况下,调用 now() 的返回值亦单调递增,则为 true ,否则为 false
(公开静态成员常量)

[编辑] 成员函数

[静态]
返回表示时钟当前值的 std::chrono::time_point
(公开静态成员函数)

[编辑] 注解

high_resolution_clock 在不同标准库实现之间实现不一致,而应该避免使用它。通常它只是 std::chrono::steady_clockstd::chrono::system_clock 的别名,但实际是哪个取决于库或配置。它是 system_clock 时不是单调的(即时间能后退)。例如对于 gcc 的 libstdc++ 它是 system_clock ,对于 MSVC 它是 steady_clock ,而对于 clang 的 libc++ 它取决于配置。

通常用户应该直接使用 std::chrono::steady_clockstd::chrono::system_clock 代替 std::chrono::high_resolution_clock :对时长度量使用 steady_clock ,对壁钟时间使用 system_clock

[编辑] 参阅

来自系统范围实时时钟的壁钟时间
(类)
决不调整的单调时钟
(类)