std::shared_future<T>::get

出自cppreference.com
 
 
並發支持庫
線程
(C++11)
(C++20)
this_thread 命名空間
(C++11)
(C++11)
(C++11)
協作式取消
互斥
(C++11)
通用鎖管理
(C++11)
(C++11)
(C++11)
(C++11)
(C++11)
條件變量
(C++11)
信號量
閂與屏障
(C++20)
(C++20)
未來體
(C++11)
(C++11)
(C++11)
(C++11)
安全回收
(C++26)
風險指針
原子類型
(C++11)
(C++20)
原子類型的初始化
(C++11)(C++20 棄用)
(C++11)(C++20 棄用)
內存定序
(C++11)(C++26 棄用)
原子操作的自由函數
原子標誌的自由函數
 
 
主模板
const T& get() const;
(1) (C++11 起)
T& get() const;
(2) (C++11 起)
std::shared_future<void> 特化
void get() const;
(3) (C++11 起)

get 成員函數在共享狀態準備就緒前(通過調用 wait())等待,然後獲取共享狀態中存儲的值(如果存在)。

如果在調用此函數前 valid()false,那麼行為未定義。

目錄

[編輯] 返回值

1) 到在共享狀態中存儲的值的 const 引用。銷毀共享狀態後,通過此引用訪問值的行為未定義。
2) 在共享狀態中作為值存儲的引用。
3) (無)

[編輯] 異常

如果未來體所引用的共享狀態中存儲了異常(例如,通過調用 std::promise::set_exception()),那麼就會拋出該異常。

[編輯] 註解

C++ 標準建議實現在調用前檢測 valid()false 的情況,並拋出以 std::future_errc::no_state 作為錯誤條件的 std::future_error

[編輯] 示例

[編輯] 參閱

檢查未來體是否擁有共享狀態
(公開成員函數) [編輯]