名稱空間
變體
操作

std::chrono::get_tzdb_list, std::chrono::get_tzdb, std::chrono::remote_version, std::chrono::reload_tzdb

來自 cppreference.com
< cpp‎ | chrono
 
 
日期和時間庫
時間點
(C++11)
(C++20)
時長
(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++20)
(C++20)(C++20)
chrono I/O
(C++20)

時區
(C++20)
(C++20)
get_tzdbget_tzdb_listreload_tzdbremote_version
(C++20)(C++20)(C++20)(C++20)
(C++20)
(C++20)
(C++20)
(C++20)
(C++20)
C風格日期和時間
 
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) 如果因任何原因無法返回包含一個或多個有效 tzdbtzdb_list 的引用,則丟擲 std::runtime_error

[編輯] 返回值

1) 對全域性 std::chrono::tzdb_list 單例的引用。
2) std::chrono::get_tzdb_list().front()
3) 包含最新遠端資料庫版本的字串。
4) std::chrono::get_tzdb_list().front()(此函式進行任何更新後)。