Compartilhar via


função de parallel_for

parallel_foritera através de um intervalo de índices e executa 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 a iteração.

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

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

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

  • _Last
    Índice de um após o último índice a serem incluídas na iteração.

  • _Step
    O valor pelo qual etapa durante a iteração da _First para _Last.A etapa deve ser positiva.invalid_argument é lançada se a etapa for menor que 1.

  • _Func
    A função a ser executada em cada iteração.Isso pode ser uma expressão 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 partitioner.O argumento pode ser uma das constauto_partitioner&, conststatic_partitioner&, constsimple_partitioner& ou affinity_partitioner& se um affinity_partitioner o objeto é usado, a referência deve ser uma referência não-const l-value, para que o algoritmo possa armazenar o estado futuro loops para reutilização.

Comentários

Para mais informações, consulte Algoritmos paralelos.

Requisitos

Cabeçalho: ppl.h

Namespace: concorrência

Consulte também

Referência

simultaneidade Namespace