parallel_for_each-Funktion
parallel_for_each wendet eine angegebene Funktion parallel auf jedes Element innerhalb eines Bereichs an. Sie entspricht semantisch der for_each-Funktion im std-Namespace, außer dass die Iteration über die Elemente parallel ausgeführt wird und die Reihenfolge der Iteration nicht angegeben ist. Das Argument _Func muss einen Funktionsaufrufoperator in der Form operator()(T) unterstützen, wobei der Parameter T der Elementtyp des durchlaufenen Containers ist.
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
);
Parameter
_Iterator
Der Typ des Iterators, der verwendet wird, um den Container zu durchlaufen._Function
Der Typ der Funktion, die auf jedes Element innerhalb des Bereichs angewendet wird._Partitioner
_First
Ein Iterator, der die Position des ersten Elements angibt, das in die parallele Iteration eingeschlossen werden soll._Last
Ein Iterator, der die Position ein Element hinter dem letzten Elements angibt, das in die parallele Iteration eingeschlossen werden soll._Func
Ein benutzerdefiniertes Funktionsobjekt, das auf jedes Element im Bereich angewendet wird._Part
Ein Verweis auf das Partitioniererobjekt. Das Argument kann einer von constauto_partitioner&, conststatic_partitioner&, const&simple_partitioner oder affinity_partitioner sein &, wenn ein Objekt verwendet affinity_partitioner, wird der Verweis muss ein nicht konstanter L-Werts-Verweis sein, sodass der Algorithmus Zustand speichern kann, dass zukünftige Schleifen wiederverwenden.
Hinweise
auto_partitioner wird für die Überladung ohne einen expliziten Partitionierer verwendet.
Für Iteratoren, die nicht wahlfreien Zugriff unterstützen, nur die auto_partitioner unterstützt wird.
Weitere Informationen finden Sie unter Parallele Algorithmen.
Anforderungen
Header: ppl.h
Namespace: Parallelität