create_task-Funktion

Erstellt ein PPL-task-Objekt. Das Element create_task kann überall dort verwendet werden, wo Sie einen Aufgabenkonstruktor verwendet hätten. Es wird hauptsächlich der Einfachheit halber bereitgestellt, da es beim Erstellen eines Tasks die Verwendung des auto-Schlüsselwort ermöglicht.

template<
   typename _Ty
>
__declspec(
   noinline
) auto create_task(_Ty _Param, const task_options& _TaskOptions = task_options()) -> task<typename details::_TaskTypeFromParam<_Ty>::_Type>;

template<
   typename _ReturnType
>
__declspec(
   noinline
) task<_ReturnType> create_task(const task<_ReturnType>& _Task);

Parameter

  • _Ty
    Der Typ des Parameters, von dem der Task erstellt werden soll.

  • _ReturnType

  • _Param
    Der Parameter, von dem der Task erstellt werden soll. Diese könnte bei Verwendung von Tasks in der Windows Store-App ein Lambda- oder ein Funktionsobjekt, ein task_completion_event-Objekt, ein anderes task-Objekt oder eine Windows::Foundation::IAsyncInfo-Schnittstelle sein.

  • _TaskOptions

  • _Task

Rückgabewert

Ein neuer Task des Typs T, der von _Param abgeleitet wird.

Hinweise

Die erste Überladung verhält sich wie ein Aufgabenkonstruktor, der einen einzelnen Parameter akzeptiert.

Die zweite Überladung weist das Abbruchtoken, das der neu erstellten Aufgabe bereitgestellt wird, zu. Wenn Sie diese Überladung verwenden, ist die Übergabe eines anderen task-Objekts als erster Parameter nicht zulässig.

Der Typ des zurückgegebenen Tasks wird vom ersten Parameter zur Funktion abgeleitet. Wenn _Param ein task_completion_event<T>, ein task<T> oder ein Funktionselement ist, das entweder den Typ T oder task<T> zurückgibt, ist der Typ des erstellten Tasks task<T>.

Wenn das _Param-Element bei einer Windows Store-App vom Typ Windows::Foundation::IAsyncOperation<T>^, Windows::Foundation::IAsyncOperationWithProgress<T,P>^ oder ein Funktionselement ist, das einen dieser Typen zurückgibt, ist der erstellte Task vom Typ task<T>. Wenn das _Param-Element vom Typ Windows::Foundation::IAsyncAction^ oder Windows::Foundation::IAsyncActionWithProgress<P>^ oder ein Funktionselement ist, das einen dieser Typen zurückgibt, ist der erstellte Task von Typ task<void>.

Anforderungen

Header: ppltasks.h

Namespace: Parallelität

Siehe auch

Referenz

concurrency-Namespace

task-Klasse

Konzepte

Aufgabenparallelität (Concurrency Runtime)