std::chrono::get_tzdb_list, std::chrono::get_tzdb, std::chrono::remote_version, std::chrono::reload_tzdb
來自 cppreference.com
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) 返回包含最新遠端資料庫版本的字串。
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) 包含最新遠端資料庫版本的字串。
4) std::chrono::get_tzdb_list().front()(此函式進行任何更新後)。