parallel_for_each (Función)
parallel_for_each aplica una función especificada para cada elemento dentro de un intervalo, en paralelo. Es semánticamente equivalente a la función for_each en el espacio de nombres std, salvo que la iteración sobre los elementos se realiza en paralelo, y el orden de iteración no está especificado. El argumento _Func debe admitir un operador de llamada de función del formulario operator()(T) donde el parámetro T es el tipo de elemento del contenedor que se recorre en iteración.
template <
typename _Iterator,
typename _Function
>
void parallel_for_each(
_Iterator_First,
_Iterator_Last,
const _Function& _Func
);
template <
typename _Iterator,
typename _Function,
typename _Partitioner
>
void parallel_for_each(
_Iterator_First,
_Iterator_Last,
const _Function& _Func,
_Partitioner&& _Part
);
Parámetros
_Iterator
El tipo del iterador que se usa para iterar sobre el contenedor._Function
El tipo de la función que se aplicará a cada elemento dentro del intervalo._Partitioner
_First
Un iterador que direcciona la posición del primer elemento que se va a incluir en iteración paralela._Last
Un iterador que direcciona la posición uno pasado el primer elemento que se va a incluir en iteración paralela._Func
Un objeto de función definida por el usuario que se aplica a cada elemento en el intervalo._Part
Una referencia al objeto de particionador. El argumento puede ser uno de constauto_partitioner&, de conststatic_partitioner&, de constsimple_partitioner& o de affinity_partitioner& si se usa un objeto de affinity_partitioner , referencia debe ser una referencia no - const de l- valor, de modo que el algoritmo puede almacenar el estado para que los bucles futuros reusen.
Comentarios
auto_partitioner se utilizará para la sobrecarga sin un particionador explícito.
Para iteradores que no admiten el acceso aleatorio, sólo se admite auto_partitioner .
Para obtener más información, vea Algoritmos paralelos.
Requisitos
Encabezado: ppl.h
Espacio de nombres: simultaneidad