我正在使用steady_clock
来保存某些消息的时间戳。对于调试目的,可以使用日历(或类似的东西)。
对于其他时钟,静态函数to_time_t
,但在GCC(MinGW 4.8.0)上,此功能不存在。
现在我打印的东西像:
Timestamp: 26735259098242
对于时间戳我需要一个steady_clock所以我不能使用system_clock
或其他人。
编辑上一个打印是从time_since_epoch().count
()给出的
假设您需要内部计算的稳定行为,而不是显示,这里可以使用一个函数转换为time_t
进行显示。
using std::chrono::steady_clock;
using std::chrono::system_clock;
time_t steady_clock_to_time_t( steady_clock::time_point t )
{
return system_clock::to_time_t(system_clock::now()
+ (t - steady_clock::now()));
}
如果你需要稳定的日志记录行为,你需要在启动时获得一个( system_clock::now(), steady_clock::now() )
对并在之后永远使用它。