Sdílet prostřednictvím


parallel_for_each – funkce

parallel_for_eachzadanou funkci platí pro každý prvek v rozsahu paralelně.Je sémanticky rovnocenné for_each fungovat std oboru názvů, kromě této iteraci přes prvky se provádí souběžně a pořadí iterace není určena.Argument _Func musí podporovat hospodářský subjekt funkce volání formuláře operator()(T) kde parametr T je typ kontejneru, přičemž musí přes vstupní položky.

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

Parametry

  • _Iterator
    Typ iterace používá k iterování kontejneru.

  • _Function
    Typ funkce použité pro každý prvek v rozsahu.

  • _Partitioner

  • _First
    Iterace adresování pozice prvního prvku mají být zahrnuty do paralelních iterace.

  • _Last
    Iterace adresování jednu pozici za poslední prvek mají být zahrnuty do paralelních iterace.

  • _Func
    Uživatelem definované funkce objekt použitý pro každý prvek v rozsahu.

  • _Part
    Odkaz na objekt partitioner.Argument může být jeden z constauto_partitioner&, conststatic_partitioner&, constsimple_partitioner& nebo affinity_partitioner& Pokud affinity_partitioner je použit objekt, odkaz musí být bez const l hodnota odkaz tak, aby algoritmus lze ukládat stav pro budoucí smyčky na opakované použití.

Poznámky

auto_partitioner bude použita pro přetížení bez explicitní partitioner.

Pro u iterátorů, které nepodporují náhodný přístup pouze k auto_partitioner je podporována.

Další informace naleznete v tématu Paralelní algoritmy.

Požadavky

Záhlaví: ppl.h

Obor názvů: souběžnosti

Viz také

Referenční dokumentace

concurrency – obor názvů