operator|| 演算子

引数として指定されたいずれかのタスクが正常に完了したときに正常に完了するタスクを作成します。

template<
   typename _ReturnType
>
task<_ReturnType> operator||(
   const task<_ReturnType> & _Lhs,
   const task<_ReturnType> & _Rhs
);

template<
   typename _ReturnType
>
task<std::vector<_ReturnType>> operator||(
   const task<std::vector<_ReturnType>> & _Lhs,
   const task<_ReturnType> & _Rhs
);

template<
   typename _ReturnType
>
task<std::vector<_ReturnType>> operator||(
   const task<_ReturnType> & _Lhs,
   const task<std::vector<_ReturnType>> & _Rhs
);

inline task<void> operator||(
   const task<void> & _Lhs,
   const task<void> & _Rhs
);

パラメーター

  • _ReturnType
    返されるタスクの種類。

  • _Lhs
    結果のタスクにまとめられる最初のタスク。

  • _Rhs
    結果のタスクにまとめられる 2 番目のタスク。

戻り値

入力タスクのいずれかが正常に完了した場合に正常に完了するタスク。 入力したタスクの種類が T である場合、この関数の出力は task<std::vector<T> になります。 入力したタスクの種類が void である場合、出力のタスクも task<void> になります。

解説

タスクの両方が取り消されたか、または例外がスローすれば、返されたタスクが取り消された状態で完了し、そのタスクの get() または wait() を呼び出すと、例外が発生した場合の 1 つがスローされます。

必要条件

ヘッダー: ppltasks.h

名前空間: concurrency

参照

関連項目

concurrency 名前空間

概念

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