when_all funkce
Vytvoří, když všechny úkoly, které jsou zadány jako argumenty úspěšně dokončena úspěšně dokončí úkol.
template <
typename _Iterator
>
auto when_all(
_Iterator_Begin,
_Iterator_End
) -> decltype (details::_WhenAllImpl<std::iterator_traits<_Iterator>::value_type::result_type, _Iterator>::_Perform(nullptr, _Begin, _End));
template <
typename _Iterator
>
auto when_all(
_Iterator_Begin,
_Iterator_End,
cancellation_token _CancellationToken
) -> decltype (details::_WhenAllImpl<std::iterator_traits<_Iterator>::value_type::result_type, _Iterator>::_Perform(_CancellationToken._GetImplValue(), _Begin, _End));
Parametry
_Iterator
Typ vstupního iterace._Begin
První prvek pozice v rozsahu prvky do výsledné úkolu._End
Pozice prvního prvku mimo oblast prvky do výsledné úkolu._CancellationToken
Zrušení token, který řídí zrušení vrácené úkolu.Pokud nezadáte zrušení token, výsledný úloha bude vytvořena s token, který je kombinací cancelable tokeny (tokeny vytvořené metodami než **cancellation_token::none()**úkolů poskytnuty.
Vrácená hodnota
Úkol, který úspěšně dokončí, když všechny vstupní úkoly byly úspěšně dokončeny.Pokud jsou vstupní úkoly typu T, bude výstup této funkce task<std::vector<T>>.Pokud jsou vstupní úkoly typu void výstup úloh bude také task<void>.
Poznámky
Pokud jeden z úkolů je zrušena nebo výjimku, vrácené úkolu bude dokončena včas, stav stornované výjimku, pokud je encoutered, bude být vyvolána při volání get() nebo wait() na úkolu.
Požadavky
Záhlaví: ppltasks.h
Obor názvů: souběžnosti