std::chrono::get_tzdb_list, std::chrono::get_tzdb, std::chrono::remote_version, std::chrono::reload_tzdb
std::chrono::tzdb_list& get_tzdb_list(); |
(1) | (C++20 起) |
const std::chrono::tzdb& get_tzdb(); |
(2) | (C++20 起) |
std::string remote_version(); |
(3) | (C++20 起) |
const std::chrono::tzdb& reload_tzdb(); |
(4) | (C++20 起) |
这些函数提供到程序范围的时区数据库访问。
1) 返回到全局 std::chrono::tzdb_list 单例的引用。若这是到数据库的首次访问,则初始化数据库。初始化后,数据库将保有单个初始化的 std::chrono::tzdb 对象 。此函数是线程安全的:同时调用此函数不引入数据竞争。
2) 返回到
tzdb_list
单例所保有的首个 std::chrono::tzdb 对象的引用。等价于 std::chrono::get_tzdb_list().front() 。3) 返回含有最新远程数据库版本的 string 。
4) 若 remote_version() != get_tzdb().version ,则推入表示远程数据库的新
tzdb
对象到 get_tzdb_list()
所引用的 tzdb_list
单例的前部。否则无效果。不非法化任何引用、指针或迭代器。同时与 get_tzdb_list().front() 或 get_tzdb_list().erase_after() 调用此函数不引入数据竞争。异常
返回值
1) 到全局 std::chrono::tzdb_list 单例的引用。
2) std::chrono::get_tzdb_list().front() 。
3) 含有最新远程数据库版本的 string 。
4) (此函数所作的任何更新后的) std::chrono::get_tzdb_list().front() 。