Freigeben über


when_all-Funktion (C++-REST-SDK)

Erstellt eine Aufgabe, die erfolgreich abgeschlossen wird, wenn alle als Argumente angegeben Aufgaben erfolgreich abgeschlossen werden.

Warnung

Dieses Thema enthält Informationen für das C++ REST SDK 1.0 (Codename "Casablanca").Wenn Sie eine neuere Version von der Webseite "Codeplex Casablanca" verwenden, dann verwenden Sie die lokale Dokumentation unter http://casablanca.codeplex.com/documentation.

template <    typename _Iterator > auto when_all(    _Iterator_Begin,    _Iterator_End,    const task_options& _TaskOptions = task_options() ) -> decltype (details::_WhenAllImpl<typename std::iterator_traits<_Iterator>::value_type::result_type, _Iterator>::_Perform(_TaskOptions, _Begin, _End));

Parameter

  • _Iterator
    Der Typ des Eingabeiterators.

  • _Begin
    Die Position des ersten Elements in dem Bereich von Elementen, die mit der resultierenden Aufgabe kombiniert werden sollen.

  • _End
    Die Position des ersten Elements hinter dem Bereich von Elementen, die mit der resultierenden Aufgabe kombiniert werden sollen.

  • _TaskOptions

Rückgabewert

Eine Aufgabe, die erfolgreich abgeschlossen ist, wenn alle Eingabeaufgaben erfolgreich abgeschlossen wurden. Wenn die Eingabeaufgaben vom Typ T sind, wird die Ausgabe dieser Funktion task<std::vector<T>> sein. Wenn die Eingabeaufgaben vom Typ void sind, ist die Ausgabeaufgabe auch task<void>.

Hinweise

Wenn eine der Aufgaben abgebrochen wird oder eine Ausnahme auslöst, wird die zurückgegebene Aufgabe früh im abgebrochenen Zustand abgeschlossen, und die Ausnahme, sofern sie auftritt, wird ausgelöst, wenn Sie get() oder wait() für diese Aufgabe aufrufen.

Anforderungen

Header: pplxtasks.h

Namespace: pplx

Siehe auch

Referenz

pplx-Namespace

Konzepte

Aufgabenparallelität (Concurrency Runtime)