IUMSScheduler-Struktur

Eine Schnittstelle zu einer Abstraktion eines Arbeitsplaners, der vom Ressourcen-Manager der Concurrency Runtime im Benutzermodus planbare Threads erwartet. Der Ressourcen-Manager verwendet diese Schnittstelle, um mit UMS-Threadplanern zu kommunizieren. Die IUMSScheduler-Schnittstelle erbt von der IScheduler-Schnittstelle.

struct IUMSScheduler : public IScheduler;

Member

Öffentliche Methoden

Name

Beschreibungen

IUMSScheduler::SetCompletionList-Methode

Weist einem UMS-Threadplaner eine IUMSCompletionList-Schnittstelle zu.

Hinweise

Wenn Sie einen benutzerdefinierten Planer implementieren, der mit dem Ressourcen-Manager kommuniziert, und Sie möchten, dass UMS-Threads an Ihren Planer übergeben werden, anstelle gewöhnlicher Win32-Threads, dann müssen Sie eine Implementierung der IUMSScheduler-Schnittstelle bereitstellen. Außerdem sollten Sie den Richtlinienwert für den Planerrichtlinienschlüssel SchedulerKind auf UmsThreadDefault festlegen. Wenn die Richtlinie einen UMS-Thread angibt, muss die IScheduler-Schnittstelle, die als Parameter an die IResourceManager::RegisterScheduler-Methode übergeben wird, eine IUMSScheduler-Schnittstelle sein.

Der Ressourcen-Manager ist in der Lage, Ihnen UMS-Threads nur unter Betriebssystemen zuzuweisen, die über die UMS-Funktion verfügen. 64-Bit-Betriebssysteme mit Version Windows 7 und höher unterstützen UMS-Threads. Wenn Sie eine Planerrichtlinie mit dem SchedulerKind-Schlüsselwert UmsThreadDefault erstellen und die zugrunde liegende Plattform UMS nicht unterstützt, dann wird der Wert des SchedulerKind-Schlüssels dieser Richtlinie in den Wert ThreadScheduler geändert. Sie sollten diesen Richtlinienwert immer zurücklesen, bevor Sie den Empfang von UMS-Threads erwarten.

Die IUMSScheduler-Schnittstelle ist ein Ende eines bidirektionalen Kommunikationskanals zwischen einem Planer und dem Ressourcen-Manager. Das andere Ende wird durch die IResourceManager-Schnittstelle und ISchedulerProxy-Schnittstelle dargestellt, die welche vom Ressourcen-Manager implementiert werden.

Vererbungshierarchie

IScheduler

IUMSScheduler

Anforderungen

Header: concrtrm.h

Namespace: Concurrency

Siehe auch

Referenz

Concurrency-Namespace

PolicyElementKey-Enumeration

IScheduler-Struktur

IUMSCompletionList-Struktur

IResourceManager-Struktur