Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Die task_handle-Klasse stellt eine einzelne parallele Arbeitsaufgabe dar. Kapselt die Anweisungen und die Daten, die erforderlich sind, um ein Stück Arbeit auszuführen.
template<
typename _Function
>
class task_handle : public ::Concurrency::details::_UnrealizedChore;
Parameter
- _Function
Der Typ des Funktionsobjekts, das aufgerufen wird, um die vom task_handle-Objekt dargestellten Arbeiten auszuführen.
Member
Öffentliche Konstruktoren
Name |
Beschreibungen |
|---|---|
Erstellt ein neues task_handle-Objekt. Die Arbeit der Aufgabe wird ausgeführt, indem die als Parameter an den Konstruktor angegebene Funktion aufgerufen wird. |
|
Zerstört das task_handle-Objekt. |
Öffentliche Operatoren
Name |
Beschreibungen |
|---|---|
Der Funktionsaufrufoperator, den die Laufzeit aufruft, um die Arbeit des Aufgabenhandles auszuführen. |
Hinweise
task_handle-Objekte können in Verbindung mit einer structured_task_group oder einem allgemeineren task_group-Objekt verwendet werden, um die Arbeit in parallele Aufgaben aufzuteilen. Weitere Informationen finden Sie unter Aufgabenparallelität (Concurrency Runtime).
Beachten Sie, dass der Ersteller eines task_handle-Objekts für das Verwalten der Lebensdauer des erstellten task_handle-Objekts zuständig ist, bis es nicht mehr von der Concurrency Runtime benötigt wird. In der Regel bedeutet dies, dass das task_handle-Objekt erst zerstört werden darf, bis die wait-Methode oder run_and_wait-Methode der task_group oder structured_task_group aufgerufen wurde, für die es in die Warteschlange gestellt wurde.
task_handle-Objekte werden in der Regel in Verbindung mit C++-Lambdas verwendet. Da Sie den wahren Typ des Lambdas nicht wissen, wird i. d. R. die make_task-Funktion verwendet, um ein task_handle-Objekt zu erstellen.
Beim Testlauf wird eine Kopie der Arbeitsfunktion erstellt, die an ein task_handle-Objekt übergeben wird. Daher werden Zustandsänderungen, die in einem an ein task_handle-Objekt übergebenen Funktionsobjekt auftreten, nicht in der Kopie dieses Funktionsobjekts angezeigt.
Vererbungshierarchie
_Chore
_AllocBase
_UnrealizedChore
Anforderungen
Header: ppl.h
Namespace: Concurrency
Siehe auch
Referenz
structured_task_group::run-Methode
structured_task_group::wait-Methode