次の方法で共有


task クラス (同時実行ランタイム)

並列パターン ライブラリ (PPL) task クラス。 task オブジェクトは、非同期的に、他のタスクと同時に実行できる処理、および同時実行ランタイムの並列アルゴリズムによって生成される並列処理を表します。 正常に終了した場合は、型 _ResultType の結果が生成されます。 型 task<void> のタスクでは結果が作成されません。 タスクは、他のタスクと関係なく待機および取り消しできます。 また、continuations(then)、および join(when_all) パターンと choice(when_any) パターンを使用して、他のタスクと共に構成することもできます。

template <    typename _Type > class task;  template <> class task<void>;  template<    typename _ReturnType > class task;

パラメーター

  • _Type

  • T

  • _ReturnType
    このタスクの結果の型。

メンバー

パブリック typedef

名前

説明

result_type

このクラスのオブジェクトによって生成される結果の型。

パブリック コンストラクター

名前

説明

task::task コンストラクター

オーバーロードされます。 task オブジェクトを構築します。

パブリック メソッド

名前

説明

task::get メソッド

オーバーロードされます。 このタスクによって生成された結果を返します。 タスクが終了状態にない場合、get への呼び出しは、そのタスクが完了するまで待機します。 このメソッドは、result_typevoid に指定されたタスクで呼び出された場合は値を返しません。

task::is_apartment_aware メソッド

タスクが Windows ランタイム IAsyncInfo インターフェイスをラップ解除するか、こうしたタスクの子であるかを決定します。

task::is_done メソッド (同時実行ランタイム)

タスクが完了したかどうかを決定します。

task::scheduler メソッド (同時実行ランタイム)

このタスクのスケジューラを返します

task::then メソッド

オーバーロードされます。 継続タスクをこのタスクに追加します。

task::wait メソッド

このタスクが終了状態になるまで待機します。 タスクの依存関係すべてが満たされ、バックグラウンド ワーカーによって実行用にまだ検出されていない場合、wait はタスクをインラインで実行できます。

パブリック演算子

名前

説明

task::operator!= 演算子

オーバーロードされます。 2 つの task オブジェクトが異なる内部タスクを表すかどうかを決定します。

task::operator= 演算子

オーバーロードされます。 ある task オブジェクトの内容を別のオブジェクトの内容で置き換えます。

task::operator== 演算子

オーバーロードされます。 2 つの task オブジェクトが同じ内部タスクを表すかどうかを決定します。

解説

ppltasks.h で定義されるタスクのクラスおよび関連する型は、プラットフォーム間で移植性があり、非同期 HTTP のポータブル ライブラリである C++ REST SDK の基になります。

詳細については、「タスクの並列化 (同時実行ランタイム)」を参照してください。

継承階層

task

必要条件

ヘッダー: ppltasks.h

名前空間: concurrency

参照

関連項目

concurrency 名前空間