共用方式為


parallel_for 函式

parallel_for 會逐一查看某個範圍的索引,並以平行方式在每個反覆項目執行使用者提供函式。

template <
   typename _Index_type,
   typename _Function,
   typename _Partitioner
>
void parallel_for(
   _Index_type_First,
   _Index_type_Last,
   _Index_type_Step,
   const _Function& _Func,
   _Partitioner&& _Part
);

template <
   typename _Index_type,
   typename _Function
>
void parallel_for(
   _Index_type_First,
   _Index_type_Last,
   _Index_type_Step,
   const _Function& _Func
);

template <
   typename _Index_type,
   typename _Function
>
void parallel_for(
   _Index_type_First,
   _Index_type_Last,
   const _Function& _Func,
   const auto_partitioner& _Part = auto_partitioner()
);

template <
   typename _Index_type,
   typename _Function
>
void parallel_for(
   _Index_type_First,
   _Index_type_Last,
   const _Function& _Func,
   const static_partitioner& _Part
);

template <
   typename _Index_type,
   typename _Function
>
void parallel_for(
   _Index_type_First,
   _Index_type_Last,
   const _Function& _Func,
   const simple_partitioner& _Part
);

template <
   typename _Index_type,
   typename _Function
>
void parallel_for(
   _Index_type_First,
   _Index_type_Last,
   const _Function& _Func,
   affinity_partitioner& _Part
);

參數

  • _Index_type
    要用於反覆運算的索引的型別。

  • _Function
    將在每個反覆項目執行的函式的型別。

  • _Partitioner
    用來分割提供範圍的分割器型別。

  • _First
    要包含在反覆項目中的第一個索引。

  • _Last
    要包含在反覆項目中的最後一個索引旁的索引。

  • _Step
    從 _First 逐步執行到 _Last 時逐步執行的值。 步驟必須是正數。 如果步驟少於 1,則會擲回 invalid_argument

  • _Func
    要在每個反覆項目執行的函式。 這可能是 Lambda 運算式、函式指標或支援函式呼叫運算子與簽章 void operator()(_Index_type**)** 版本的任何物件。

  • _Part
    分割器物件的參考。 引數可以是其中一個 constauto_partitioner&static_partitioner&const,或 constsimple_partitioner& affinity_partitioner& ,如果使用 affinity_partitioner 物件,參考必須是非常數左值參考,因此,演算法可能儲存未來重複的狀態可以重複使用。

備註

如需詳細資訊,請參閱平行演算法

需求

標頭: ppl.h

**命名空間:**concurrency

請參閱

參考

concurrency 命名空間