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 :