Freigeben über


Scheduler-Klasse

Stellt eine Abstraktion für einen Concurrency Runtime-Planer dar.

class Scheduler;

Member

Geschützte Konstruktoren

Name

Beschreibung

Scheduler::Scheduler-Konstruktor

Ein Objekt der Scheduler-Klasse kann nur mit Factorymethoden oder implizit erstellt werden.

Scheduler::~Scheduler-Destruktor

Ein Objekt der Scheduler-Klasse wird implizit zerstört, sobald keine externen Verweise mehr vorhanden sind.

Öffentliche Methoden

Name

Beschreibung

Scheduler::Attach-Methode

Fügt den Planer an den aufrufenden Kontext an. Nachdem diese Methode zurückgekehrt ist, wird der aufrufende Kontext vom Planer verwaltet, und der Planer wird der aktuelle Planer.

Scheduler::Create-Methode

Erstellt einen neuen Planer, dessen Verhalten vom _Policy-Parameter beschrieben wird, platziert einen anfänglichen Verweis auf den Planer und gibt einen Zeiger darauf zurück.

Scheduler::CreateScheduleGroup-Methode

Überladen. Erstellt eine neue Planungsgruppe innerhalb des Planers. Die Version, die den Parameter akzeptiert _Placement, verursacht Aufgaben innerhalb der neu erstellten Planungsgruppe, zum Ausführung am Speicherort beeinflusst werden, dass durch diesen Parameter angegeben.

Scheduler::GetNumberOfVirtualProcessors-Methode

Gibt die aktuelle Anzahl virtueller Prozessoren für den Planer zurück.

Scheduler::GetPolicy-Methode

Gibt eine Kopie der Richtlinie zurück, mit der der Planer erstellt wurde.

Scheduler::Id-Methode

Gibt einen eindeutigen Bezeichner für den Planer zurück.

Scheduler::IsAvailableLocation-Methode

Bestimmt, ob eine bestimmte Position im Planer verfügbar ist.

Scheduler::Reference-Methode

Inkrementiert den Planerverweiszähler.

Scheduler::RegisterShutdownEvent-Methode

Veranlasst, dass das im _Event-Parameter übergebene Windows-Ereignishandle signalisiert wird, wenn der Planer sich herunterfährt und zerstört. Zur Zeit, wenn das Ereignis signalisiert wird, ist alle Arbeit, die für den Planer geplant wurde, abgeschlossen. Mehrere Herunterfahrereignisse können über diese Methode registriert werden.

Scheduler::Release-Methode

Dekrementiert den Planerverweiszähler.

Scheduler::ResetDefaultSchedulerPolicy-Methode

Setzt die Standardplanerrichtlinie zum Ablaufstandard zurück. Beim nächsten Aufruf ein Standardplaner erstellt wird, verwendet er die Ablaufstandardrichtlinieeinstellungen.

Scheduler::ScheduleTask-Methode

Überladen. Plant eine einfache Aufgabe innerhalb des Planers. Die einfache Aufgabe wird in einer Planungsgruppe platziert, die durch die Laufzeit bestimmt wird. Die Version, die den _Placement-Parameter akzeptiert, durch die die Aufgabe, zum Ausführung an der angegebenen Position beeinflusst werden.

Scheduler::SetDefaultSchedulerPolicy-Methode

Ermöglicht das Verwenden einer benutzerdefinierten Richtlinie zum Erstellen des Standardplaners. Diese Methode kann aufgerufen werden, wenn kein Standardplaner innerhalb des Prozesses vorhanden ist. Nachdem eine Standardrichtlinie festgelegt wurde, bleibt sie bestehen bis die folgenden gültigen Aufruf entweder zu SetDefaultSchedulerPolicy oder der Methode ResetDefaultSchedulerPolicy.

Hinweise

Der Concurrency Runtime-Planer Ausführungskontexte verwendet, die den Betriebssystemausführungskontexten, beispielsweise ein Thread zuordnen, um die Aufgaben auszuführen, die auf sie von der Anwendung in die Warteschlange gestellt wird. Die Parallelitätsebene eines Planers ist immer gleich der Anzahl virtueller Prozessoren, die vom Ressourcen-Manager gewährt wurden. Ein virtueller Prozessor ist eine Abstraktion für eine Verarbeitungsressource und wird einem Hardwarethread des zugrunde liegenden Systems zugeordnet. Nur ein einzelner Planerkontext kann jeweils auf einem virtuellen Prozessor ausgeführt werden.

Die Concurrency Runtime erstellt pro Prozess einen Standardplaner, um Arbeit parallel auszuführen. Darüber hinaus können Sie eigene Planerinstanzen erstellen und sie mit der Klasse bearbeiten.

Vererbungshierarchie

Scheduler

Anforderungen

Header: concrt.h

Namespace: Parallelität

Siehe auch

Referenz

concurrency-Namespace

Scheduler-Klasse

PolicyElementKey-Enumeration

Konzepte

Taskplaner (Concurrency Runtime)