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 du partitionneur qui est utilisé pour partitionner la plage fournie.

  • _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
    Une référence à l'objet de partitionneur.L'argument peut être un d' constauto_partitioner&, d' conststatic_partitioner&, d' constsimple_partitioner& ou d' affinity_partitioner& si un objet d' affinity_partitioner est utilisé, la référence doit être une référence non constante lvalue, afin que l'algorithme puisse stocker l'état pour que les futures boucles les réutilisent.

Notes

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

Configuration requise

En-tête : ppl.h

Accès concurrentiel del'espace de noms :

Voir aussi

Référence

concurrency, espace de noms