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
    要合并到结果任务的第二个任务。

返回值

将在任意一个输入任务成功完成后成功完成的任务。 如果输入任务的类型为 T,则此函数的输出将为 task<std::vector<T>。 如果输入任务的类型为 void,则输出任务也将是 task<void>

备注

如果两个任务都被取消或引发异常,则返回的任务将在取消状态下完成,并且,如果您对该任务调用 get()wait(),则在遇到异常的情况下将会引发异常。

要求

**标头:**ppltasks.h

**命名空间:**并发

请参见

参考

concurrency 命名空间

概念

任务并行(并发运行时)