Compartilhar via


Função parallel_for

parallel_for iteração por um intervalo de índices e executar uma função fornecida pelo usuário em cada iteração, em paralelo.

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
);

Parâmetros

  • _Index_type
    O tipo de índice que está sendo usado para iteração.

  • _Function
    O tipo de função que será executada em cada iteração.

  • _Partitioner
    O tipo de partitioner que é usado para dividir o intervalo fornecido.

  • _First
    O primeiro índice a ser incluído na iteração.

  • _Last
    O passado de índice no índice a última a ser incluído na iteração.

  • _Step
    O valor pelo qual a etapa ao fazer a iteração de _First a _Last. A etapa deve ser positivo. invalid_argument gerada se a etapa for menor que 1.

  • _Func
    A função a ser executada em cada iteração. Isso pode ser uma expressão de lambda, um ponteiro de função, ou qualquer objeto que ofereça suporte a uma versão do operador de chamada de função com a assinatura void operator()(_Index_type**)**.

  • _Part
    Uma referência ao objeto de partitioner. O argumento pode ser um de constauto_partitioner&, de conststatic_partitioner&, de constsimple_partitioner& ou de affinity_partitioner& se um objeto de affinity_partitioner for usado, a referência deve ser uma referência de l- valor de não const, de forma que o algoritmo possa armazenar o estado para que o loop futuros reuso.

Comentários

Para obter mais informações, consulte Algoritmos paralelos.

Requisitos

Cabeçalho: ppl.h

Namespace: simultaneidade

Consulte também

Referência

Namespace Concurrency