<future>

別の関数を実行できるスレッドと結果の取得を簡略化するサポートのテンプレートとテンプレート クラスを定義する標準ヘッダー <future> を含めます。結果は、関数または関数で出力されるが、などの関数で例外によって返される値。

このヘッダーは ConcRT のそのほかの機構とともに使用できるように同時実行ランタイムの (ConcRT) を使用します。ConcRT に関する詳細については、同時実行ランタイムを参照してください。

#include <future>

解説

[!メモ]

/clr/clr:pureを使用してコンパイルされたコードでは、このヘッダーはブロックされます。

非同期のプロバイダーは、関数呼び出しの結果を格納します。非同期の戻り値オブジェクトを 関数呼び出しの結果を取得するために使用されます。関連する非同期状態は、非同期プロバイダーと一つ以上の非同期戻り値のオブジェクト間の通信を提供します。

プログラムは直接関連の非同期な状態オブジェクトを作成しません。プログラムはプロバイダーに関連付けられた非同期状態を共有すると 1 を必要とする、非同期の戻り値からオブジェクトを作成するときに、非同期プロバイダーを作成します。非同期プロバイダーおよび非同期のオブジェクトを返す、非同期の関連は、共有状態を保持するオブジェクトを管理します。参照は、関連付けられた非同期状態で解放する最後のオブジェクトが、関連の非同期状態を保持するオブジェクトが破棄されるとき。

非同期プロバイダーまたは関連する非同期状態が、非同期な戻り値のオブジェクトは 空です。

関連する非同期状態は、非同期プロバイダーが戻り値を格納したか、例外を格納した場合にのみ 準備が できました。

このテンプレート関数 async およびテンプレート クラス promisepackaged_task は、非同期プロバイダーです。テンプレート クラス futureshared_future は、非同期の戻り値オブジェクトを表します。

テンプレートは、promisefutureを並べ替え、shared_future に参照渡しで型 void の特殊化と値を格納および取得するための部分的特殊化があります。これらの特化が戻り値を格納および取得する関数の定義とセマンティクスのみのプライマリ テンプレートとは異なります。

メンバー

Hh920535.collapse_all(ja-jp,VS.110).gifClasses

名前

説明

future クラス

非同期戻り値オブジェクトを表します。

future_error クラス

future のオブジェクトを管理する型のメソッドによってスローされる例外オブジェクトを表します。

packaged_task クラス

呼び出しラッパーであり、呼び出しの定義が Ty(ArgTypes...)である非同期プロバイダーを記述します。その関連する非同期状態は予測結果に加えて呼び出し可能オブジェクトのコピーを保持します。

promiseのクラス

非同期プロバイダーを記述します。

shared_future クラス

非同期戻り値オブジェクトを表します。future のオブジェクトに対する、非同期 shared_future のプロバイダーは任意の数のオブジェクトに関連付けることができます。

Hh920535.collapse_all(ja-jp,VS.110).gif構造体

名前

説明

is_error_code_enum の構造

future_errcerror_codeを格納するのに適していることを示す特化したクラスです。

uses_allocator の構造

常に当てはまる特殊化。

Hh920535.collapse_all(ja-jp,VS.110).gif関数

名前

説明

async 関数

非同期プロバイダーを表します。

future_category 関数

future のオブジェクトに関連付けられたエラーを付ける機能 error_category のオブジェクトへの参照を返します。

make_error_code 関数

error_code を作成します future のエラーを付ける機能 error_category のオブジェクト)。

make_error_condition 関数

error_condition を作成します future のエラーを付ける機能 error_category のオブジェクト)。

swap 関数 (<future>)

別の promise、との 1 種類のオブジェクトの関連する非同期状態を交換します。

Hh920535.collapse_all(ja-jp,VS.110).gif列挙型

名前

説明

future_errc の列挙

future_error のクラスによって報告されるエラーのシンボル名を指定します。

future_status の列挙

一定待機している関数が戻ることができる理由のシンボル名を指定します。

launch 列挙型

このテンプレート関数 asyncで使用できるモードを表すビットマスク型を表します。

参照

その他の技術情報

ヘッダー ファイル