Partager via


parallel_for, fonction

parallel_for itère au sein d'une plage d'index et exécute une fonction fournie par utilisateur à chaque itération, en parallèle.

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

Paramètres

  • _Index_type
    Type de l'index qui est utilisé pour l'itération.

  • _Function
    Type de la fonction qui sera exécutée à chaque itération.

  • _Partitioner
    Le type de partitioneur utilisé pour partitionner la plage spécifiée.

  • _First
    Premier index à inclure dans l'itération.

  • _Last
    Index un après le dernier index à inclure dans l'itération.

  • _Step
    La valeur de laquelle progresser lors de l'itération de _First à _Last. L'étape doit être positive. invalid_argument est levé si l'étape est inférieure à 1.

  • _Func
    Fonction à exécuter à chaque itération. Il peut s'agir d'une expression lambda, d'un pointeur de fonction ou de tout objet qui prend en charge une version de l'opérateur d'appel de fonction avec la signature void operator()(_Index_type**)**.

  • _Part
    Référence au partitioneur d'objet . L'argument peut être un de constauto_partitioner&, d de conststatic_partitioner&, de constsimple_partitioner& ou de affinity_partitioner&. Si un objet affinity_partitioner est utilisé, la référence doit être une référence l-value non-const , de sorte que l'algorithme puisse signaler l'état des futures boucles de réutilisation.

Notes

Pour plus d'informations, consultez Algorithmes parallèles.

Configuration requise

En-tête : ppl.h

Espace de noms : concurrency

Voir aussi

Référence

concurrency, espace de noms