Sdílet prostřednictvím


Metoda structured_task_group::run_and_wait

Naplánuje úlohu spustit vložená na kontext volání za pomoci structured_task_group objekt pro úplné zrušení podpory.Pokud task_handle objekt je předán jako parametr run_and_wait, volající je zodpovědná za správu platnosti task_handle objektu.Funkce pak čeká, dokud všechny pracovat structured_task_group objektu byla dokončena nebo byla zrušena.

template<
   class _Function
>
task_group_status run_and_wait(
   task_handle<_Function>& _Task_handle
);

template<
   class _Function
>
task_group_status run_and_wait(
   const _Function& _Func
);

Parametry

  • _Function
    Typ funkce objektu, která bude vyvolána k provedení úkolu.

  • _Task_handle
    Popisovač úkol, který bude spuštěn vložené na kontext volání.Všimněte si, že volající má odpovědnost za dobu životnosti tohoto objektu.Očekávat, že až do živé bude pokračovat běhu run_and_wait Metoda ukončení zpracování.

  • _Func
    Funkce nazývaný vyvolat subjektu práce.Může se jednat lambda nebo jiného objektu, který podporuje verzi operátor volání funkce s podpisem void operator()().

Vrácená hodnota

Údaj o tom, zda byla splněna čekání nebo skupiny úloh byl zrušen, kvůli operaci zrušit explicitní nebo výjimku je vyvolána z jednoho z jeho úkolů.Další informace naleznete v task_group_status

Poznámky

Všimněte si, že jeden nebo více úloh naplánovaných tohoto structured_task_group objektu může spustit vložené v kontextu volajícího.

Pokud jeden nebo více úloh naplánovaných tohoto structured_task_group objekt vyvolá výjimku, bude modul runtime vyberte jedna taková výjimka podle své volby a šířit z volání run_and_wait metoda.

Po vrací tato funkce structured_task_group je považován za konečný stav v objektu a by neměly být použity.Všimněte si, že využití po run_and_wait metoda vrátí, bude výsledkem nedefinované chování.

Výjimečné cesta spuštění máte pověření k volání buď tuto metodu nebo wait metoda před destruktoru z structured_task_group provede.

Požadavky

Záhlaví: ppl.h

Obor názvů: souběžnosti

Viz také

Referenční dokumentace

Třída structured_task_group

Metoda structured_task_group::Run

Metoda structured_task_group::wait

Koncepty

Úkol rovnoběžnosti (souběžnosti Runtime)