次の方法で共有


create_task 関数

PPL タスク のオブジェクトを作成します。create_task を使用してタスクのコンストラクターを使用できます。これは、便宜上作成時にタスク auto のキーワードを使用するため、主に提供されます。

template<
   typename _Ty
>
auto create_task(
   _Ty_Param
) -> task<typename details::_TaskTypeFromParam<_Ty>::_Type>;

template<
   typename _Ty
>
auto create_task(
   _Ty_Param,
   cancellation_token _Token
) -> task<typename details::_TaskTypeFromParam<_Ty>::_Type>;

パラメーター

  • _Ty
    タスクが構築されるパラメーターの型です。

  • _Param
    タスクが構築されたパラメーター。これは、地下鉄のフォーム アプリケーションでタスクを使用してラムダまたは関数オブジェクト、 task_completion_event のオブジェクト、 task の異なるオブジェクト、または Windows::Foundation::IAsyncInfo インターフェイスである可能性があります。

  • _Token
    タスクに関連付けるキャンセル トークン。このトークンのソースを取り消すと、キャンセル、タスクに要求されます。

戻り値

新しいタスクの型は T、 _Paramから推論されます。

解説

最初のオーバーロードは単一のパラメーターを受け取るタスクのコンストラクターのように動作します。

2 番目のオーバーロードは、新しく作成されたタスクをキャンセル トークンを関連付けます。このオーバーロードを使用すると、最初のパラメーターとして task の異なるオブジェクトを渡すことはできません。

返されたタスクの種類は、最初のパラメーターから関数への推論されます。_Param が task_completion_event<T>task<T>、または型 T か **task<T>**ファンクタを返す場合、作成されたタスクの種類は **task<T>**です。

地下鉄のフォーム アプリケーション _Param が型の Windows::Foundation::IAsyncOperation<T>の ^ または Windows::Foundation::IAsyncOperationWithProgress<T、 P>の ^ 場合は、これらの型のいずれかを返すファンクタで、作成されたタスクは型 **task<T>**です。_Param が型 Windows::Foundation::IAsyncAction^ または Windows::Foundation::IAsyncActionWithProgress<P>の ^、またはこれらの型のいずれかを返すファンクタ場合、作成されたタスクに型 **task<void>**があります。

必要条件

ヘッダー: ppltasks.h

名前空間: の同時実行

参照

関連項目

concurrency 名前空間

Task クラス

概念

タスクの並列化 (同時実行ランタイム)