Namespaces
Variants

std::experimental:: future

From cppreference.net
ヘッダーで定義 <experimental/future>
template < class T > class future ;
(1) (concurrency TS)
template < class T > class future < T & > ;
(2) (concurrency TS)
template <> class future < void > ;
(3) (concurrency TS)

クラステンプレート std::experimental::future std::future を以下の操作で拡張します:

  • future<future<T>> からの アンラップコンストラクタ
  • 関連付けられた共有状態が準備完了かどうかを問い合わせるメンバ関数 is_ready ;および
  • 継続処理をfutureにアタッチするメンバ関数 then

ただし、 std::experimental::future std::future の間には相互運用性はありません。

目次

メンバー関数

future オブジェクトを構築する
(公開メンバ関数)
共有状態が準備完了かどうかをチェックする
(公開メンバ関数)
futureに継続処理をアタッチする
(公開メンバ関数)
futureオブジェクトをムーブする
(公開メンバ関数)

std::futureと同一のメンバー

メンバー関数

share() std::experimental::shared_future<T> を返すことに注意してください。それ以外の動作は同一です。

futureオブジェクトを破棄する
( std::future<T> のpublicメンバー関数)
* this から共有状態を shared_future に転送して返す
( std::future<T> のpublicメンバー関数)
結果の取得
結果を返す
( std::future<T> のpublicメンバー関数)
状態
futureが共有状態を持っているかチェックする
( std::future<T> のpublicメンバー関数)
結果が利用可能になるまで待機する
( std::future<T> のpublicメンバー関数)
結果を待機し、指定されたタイムアウト期間内に利用できない場合は返る
( std::future<T> のpublicメンバー関数)
結果を待機し、指定された時点までに利用できない場合は返る
( std::future<T> のpublicメンバー関数)

関連項目

(concurrency TS)
std::shared_future を継続処理やその他の機能で拡張したバージョン
(クラステンプレート)