【发布时间】:2019-10-30 07:09:04
【问题描述】:
我查看了 cppreference.org(重点是我的):
时钟
std::chrono::utc_clock是表示协调世界时 (UTC) 的时钟。它从 1970 年 1 月 1 日星期四 00:00:00 UTC 开始测量时间,包括闰秒。
对比system_clock的定义:
system_clock测量 Unix 时间(即,自 1970 年 1 月 1 日星期四 00:00:00 协调世界时 (UTC) 以来的时间,不计算闰秒)。
真的有可能在同一个系统中拥有两者吗?例如,如果系统时钟通过 NTP 同步,则服务器决定现在是什么时间,这可以使用闰秒或不使用闰秒,但 C++ 库实现对此一无所知。或者,当引入闰秒时,该标准是否需要数据库?
【问题讨论】:
-
Is it actually possible to have both in the same system?等等,是否可以不在同一个系统中?那么tai_clockgps_clock和file_clock呢?为什么utc_clock如此特别?does the standard require a database over when a leap second was introduced?嗯,it kind of does -
Or, does the standard require a database over when a leap second was introduced?简而言之,是的,除非平台有另一个闰秒信息来源。 IANA 时区数据库包含闰秒插入列表。
标签: c++ chrono c++20 leap-second