Freigeben über


Prozess- und Threadfunktionen

In diesem Thema werden die Prozess- und Threadfunktionen beschrieben.

Verteilerwarteschlangenfunktion

Die folgende Funktion erstellt einen DispatcherQueueController.

Funktion BESCHREIBUNG
CreateDispatcherQueueController Erstellt einen DispatcherQueueController , der die Lebensdauer einer DispatcherQueue verwaltet, die Aufgaben in der Warteschlange in der Prioritätsreihenfolge in einem anderen Thread ausführt.

 

Prozessfunktionen

Die folgenden Funktionen werden mit Prozessen verwendet.

Funktion BESCHREIBUNG
CreateProcess Erstellt einen neuen Prozess und seinen primären Thread.
CreateProcessAsUser Erstellt einen neuen Prozess und seinen primären Thread. Der neue Prozess wird im Sicherheitskontext des Benutzers ausgeführt, der durch das angegebene Token dargestellt wird.
CreateProcessWithLogonW Erstellt einen neuen Prozess und seinen primären Thread. Der neue Prozess führt dann die angegebene ausführbare Datei im Sicherheitskontext der angegebenen Anmeldeinformationen (Benutzer, Domäne und Kennwort) aus.
CreateProcessWithTokenW Erstellt einen neuen Prozess und seinen primären Thread. Der neue Prozess wird im Sicherheitskontext des angegebenen Tokens ausgeführt.
ExitProcess Beendet den aufrufenden Prozess und alle zugehörigen Threads.
FlushProcessWriteBuffers Leert die Schreibwarteschlange jedes Prozessors, der einen Thread des aktuellen Prozesses ausführt.
FreeEnvironmentStrings Gibt einen Block von Umgebungszeichenfolgen frei.
GetCommandLine Ruft die Befehlszeilenzeichenfolge für den aktuellen Prozess ab.
GetCurrentProcess Ruft ein Pseudohandle für den aktuellen Prozess ab.
GetCurrentProcessId Ruft den Prozessbezeichner des aufrufenden Prozesses ab.
GetCurrentProcessorNumber Ruft die Nummer des Prozessors ab, auf dem der aktuelle Thread während des Aufrufs dieser Funktion ausgeführt wurde.
GetEnvironmentStrings Ruft den Umgebungsblock für den aktuellen Prozess ab.
Getenvironmentvariable Ruft den Wert der angegebenen Variablen aus dem Umgebungsblock des aufrufenden Prozesses ab.
GetExitCodeProcess Ruft die beendigungs-status des angegebenen Prozesses ab.
GetGuiResources Ruft die Anzahl der Handles für objekte der grafischen Benutzeroberfläche (GUI) ab, die vom angegebenen Prozess verwendet werden.
GetLogicalProcessorInformation Ruft Informationen zu logischen Prozessoren und zugehöriger Hardware ab.
GetPriorityClass Ruft die Prioritätsklasse für den angegebenen Prozess ab.
GetProcessAffinityMask Ruft eine Prozessaffinitätsmaske für den angegebenen Prozess und die Systemaffinitätsmaske für das System ab.
GetProcessGroupAffinity Ruft die Prozessorgruppenaffinität des angegebenen Prozesses ab.
GetProcessHandleCount Ruft die Anzahl geöffneter Handles ab, die zum angegebenen Prozess gehören.
GetProcessId Ruft den Prozessbezeichner des angegebenen Prozesses ab.
GetProcessIoCounters Ruft Buchhaltungsinformationen für alle E/A-Vorgänge ab, die vom angegebenen Prozess ausgeführt werden.
GetProcessMitigationPolicy Ruft Die Richtlinieneinstellungen für die Entschärfung für den Aufrufprozess ab.
GetProcessPriorityBoost Ruft den Steuerungsstatus der Prioritätsverstärkung des angegebenen Prozesses ab.
GetProcessShutdownParameters Ruft Die Parameter für das Herunterfahren für den derzeit aufrufenden Prozess ab.
GetProcessTimes Ruft Zeitsteuerungsinformationen zu für den angegebenen Prozess ab.
GetProcessVersion Ruft die Haupt- und Nebenversionsnummern des Systems ab, auf dem der angegebene Prozess ausgeführt werden soll.
GetProcessWorkingSetSize Ruft die minimalen und maximalen Arbeitssatzgrößen des angegebenen Prozesses ab.
GetProcessWorkingSetSizeEx Ruft die minimalen und maximalen Arbeitssatzgrößen des angegebenen Prozesses ab.
GetProcessorSystemCycleTime Ruft die Zykluszeit ab, die jeder Prozessor in der angegebenen Gruppe für die Ausführung verzögerter Prozeduraufrufe (DpCs) und Interruptdienstroutinen (ISRs) aufgewendet hat.
GetStartupInfo Ruft den Inhalt der STARTUPINFO-Struktur ab, die beim Erstellen des aufrufenden Prozesses angegeben wurde.
IsImmersiveProcess Bestimmt, ob der Prozess zu einer Windows Store-App gehört.
NeedCurrentDirectoryForExePath Bestimmt, ob das aktuelle Verzeichnis in den Suchpfad für die angegebene ausführbare Datei eingeschlossen werden soll.
OpenProcess Öffnet ein vorhandenes lokales Prozessobjekt.
QueryFullProcessImageName Ruft den vollständigen Namen des ausführbaren Images für den angegebenen Prozess ab.
QueryProcessAffinityUpdateMode Ruft den Affinitätsaktualisierungsmodus des angegebenen Prozesses ab.
QueryProcessCycleTime Ruft die Summe der Zykluszeit aller Threads des angegebenen Prozesses ab.
Setenvironmentvariable Legt den Wert einer Umgebungsvariablen für den aktuellen Prozess fest.
SetPriorityClass Legt die Prioritätsklasse für den angegebenen Prozess fest.
SetProcessAffinityMask Legt eine Prozessoraffinitätsmaske für die Threads eines angegebenen Prozesses fest.
SetProcessAffinityUpdateMode Legt den Affinitätsaktualisierungsmodus des angegebenen Prozesses fest.
SetProcessInformation Legt Informationen für den angegebenen Prozess fest.
SetProcessMitigationPolicy Legt die Entschärfungsrichtlinie für den aufrufenden Prozess fest.
SetProcessPriorityBoost Deaktiviert die Fähigkeit des Systems, die Priorität der Threads des angegebenen Prozesses vorübergehend zu erhöhen.
SetProcessRestrictionExemption Befreit den aufrufenden Prozess von Einschränkungen, die die Interaktion von Desktopprozessen mit der Windows Store-App-Umgebung verhindern. Diese Funktion wird von Entwicklungs- und Debugtools verwendet.
SetProcessShutdownParameters Legt herunterfahrende Parameter für den aktuell aufrufenden Prozess fest.
SetProcessWorkingSetSize Legt die minimalen und maximalen Arbeitssatzgrößen für den angegebenen Prozess fest.
SetProcessWorkingSetSizeEx Legt die minimalen und maximalen Arbeitssatzgrößen für den angegebenen Prozess fest.
TerminateProcess Beendet den angegebenen Prozess und alle zugehörigen Threads.

 

Prozessaufzählungsfunktionen

Die folgenden Funktionen werden verwendet, um Prozesse aufzulisten.

Funktion BESCHREIBUNG
EnumProcesses Ruft den Prozessbezeichner für jedes Prozessobjekt im System ab.
Process32First Ruft Informationen zum ersten Prozess ab, der in einem System Momentaufnahme gefunden wurde.
Process32Weiter Ruft Informationen zum nächsten Prozess ab, der in einem System Momentaufnahme aufgezeichnet wurde.
WTSEnumerateProcesses Ruft Informationen zu den aktiven Prozessen auf dem angegebenen Terminalserver ab.

 

Richtlinienfunktionen

Die folgenden Funktionen werden mit einer prozessweiten Richtlinie verwendet.

Funktion BESCHREIBUNG
QueryProtectedPolicy Fragt den Wert ab, der einer geschützten Richtlinie zugeordnet ist.
SetProtectedPolicy Legt eine geschützte Richtlinie fest.

 

Threadfunktionen

Die folgenden Funktionen werden mit Threads verwendet.

Funktion BESCHREIBUNG
AttachThreadInput Fügt den Eingabeverarbeitungsmechanismus eines Threads an den eines anderen Threads an.
CreateRemoteThread Erstellt einen Thread, der im virtuellen Adressraum eines anderen Prozesses ausgeführt wird.
CreateRemoteThreadEx Erstellt einen Thread, der im virtuellen Adressraum eines anderen Prozesses ausgeführt wird, und gibt optional erweiterte Attribute an, z. B. Prozessorgruppenaffinität.
CreateThread Erstellt einen Thread, der im virtuellen Adressraum des aufrufenden Prozesses ausgeführt werden soll.
ExitThread Beendet den aufrufenden Thread.
GetCurrentThread Ruft ein Pseudohandle für den aktuellen Thread ab.
GetCurrentThreadId Ruft den Threadbezeichner des aufrufenden Threads ab.
GetExitCodeThread Ruft die status des angegebenen Threads ab.
GetProcessIdOfThread Ruft den Prozessbezeichner des Prozesses ab, der dem angegebenen Thread zugeordnet ist.
GetThreadDescription Ruft die Beschreibung ab, die einem Thread zugewiesen wurde, indem SetThreadDescription aufgerufen wird.
GetThreadGroupAffinity Ruft die Prozessorgruppenaffinität des angegebenen Threads ab.
GetThreadId Ruft den Threadbezeichner des angegebenen Threads ab.
GetThreadIdealProcessorEx Ruft die Prozessornummer des idealen Prozessors für den angegebenen Thread ab.
GetThreadInformation Ruft Informationen zum angegebenen Thread ab.
GetThreadIOPendingFlag Bestimmt, ob für einen angegebenen Thread E/A-Anforderungen ausstehen.
GetThreadPriority Ruft den Prioritätswert für den angegebenen Thread ab.
GetThreadPriorityBoost Ruft den Status der Prioritätserhöhungssteuerung des angegebenen Threads ab.
GetThreadTimes Ruft Zeitinformationen für den angegebenen Thread ab.
OpenThread Öffnet ein vorhandenes Threadobjekt.
QueryIdleProcessorCycleTime Ruft die Zykluszeit für den Leerlaufthread jedes Prozessors im System ab.
QueryThreadCycleTime Ruft die Zykluszeit für den angegebenen Thread ab.
ResumeThread Verringert die Anzahl der Unterbrechungen eines Threads.
SetThreadAffinityMask Legt eine Prozessoraffinitätsmaske für den angegebenen Thread fest.
SetThreadDescription Weist einem Thread eine Beschreibung zu.
SetThreadGroupAffinity Legt die Prozessorgruppenaffinität für den angegebenen Thread fest.
SetThreadIdealProcessor Gibt einen bevorzugten Prozessor für einen Thread an.
SetThreadIdealProcessorEx Legt den idealen Prozessor für den angegebenen Thread fest und ruft optional den vorherigen idealen Prozessor ab.
SetThreadInformation Legt Informationen für den angegebenen Thread fest.
SetThreadPriority Legt den Prioritätswert für den angegebenen Thread fest.
SetThreadPriorityBoost Deaktiviert die Fähigkeit des Systems, die Priorität eines Threads vorübergehend zu erhöhen.
SetThreadStackGuarantee Legt die Stapelgarantie für den aufrufenden Thread fest.
Schlafen Hält die Ausführung des aktuellen Threads für ein angegebenes Intervall an.
SleepEx Hält den aktuellen Thread an, bis die angegebene Bedingung erfüllt ist.
SuspendThread Hält den angegebenen Thread an.
SwitchToThread Bewirkt, dass der aufrufende Thread die Ausführung an einen anderen Thread übergibt, der auf dem aktuellen Prozessor ausgeführt werden kann.
TerminateThread Beendet einen Thread.
ThreadProc Eine anwendungsdefinierte Funktion, die als Startadresse für einen Thread dient.
TlsAlloc Ordnet einen TLS-Index (Thread Local Storage) zu.
TlsFree Gibt einen TLS-Index frei.
TlsGetValue Ruft den Wert im TLS-Slot des aufrufenden Threads für einen angegebenen TLS-Index ab.
TlsSetValue Speichert einen Wert im TLS-Slot des aufrufenden Threads für einen angegebenen TLS-Index.
Waitforinputidle Wartet, bis der angegebene Prozess auf Benutzereingaben wartet, ohne dass eine Eingabe aussteht, oder bis das Timeoutintervall abgelaufen ist.

 

Erweiterte Attributfunktionen für Prozess und Thread

Die folgenden Funktionen werden verwendet, um erweiterte Attribute für die Prozess- und Threaderstellung festzulegen.

Funktion BESCHREIBUNG
DeleteProcThreadAttributeList Löscht die angegebene Liste der Attribute für die Prozess- und Threaderstellung.
InitializeProcThreadAttributeList Initialisiert die angegebene Liste der Attribute für die Prozess- und Threaderstellung.
UpdateProcThreadAttribute Updates das angegebene Attribut in der angegebenen Liste der Attribute für die Prozess- und Threaderstellung.

 

WOW64-Funktionen

Die folgenden Funktionen werden mit WOW64 verwendet.

Funktion BESCHREIBUNG
IsWow64Message Bestimmt, ob die letzte nachricht, die aus der Warteschlange des aktuellen Threads gelesen wurde, aus einem WOW64-Prozess stammt.
IsWow64Process Bestimmt, ob der angegebene Prozess unter WOW64 ausgeführt wird.
IsWow64Process2 Bestimmt, ob der angegebene Prozess unter WOW64 ausgeführt wird. gibt außerdem zusätzliche Informationen zu Computerprozessen und -architekturen zurück.
Wow64SuspendThread Hält den angegebenen WOW64-Thread an.

 

Auftragsobjektfunktionen

Die folgenden Funktionen werden mit Auftragsobjekten verwendet.

Funktion BESCHREIBUNG
AssignProcessToJobObject Ordnet einem vorhandenen Auftragsobjekt einen Prozess zu.
CreateJobObject Erstellt oder öffnet ein Auftragsobjekt.
IsProcessInJob Bestimmt, ob der Prozess im angegebenen Auftrag ausgeführt wird.
OpenJobObject Öffnet ein vorhandenes Auftragsobjekt.
QueryInformationJobObject Ruft Limit- und Auftragsstatusinformationen aus dem Auftragsobjekt ab.
SetInformationJobObject Legen Sie Grenzwerte für ein Auftragsobjekt fest.
TerminateJobObject Beendet alle Prozesse, die derzeit dem Auftrag zugeordnet sind.
UserHandleGrantAccess Gewährt oder verweigert den Zugriff auf ein Handle für ein User-Objekt für einen Auftrag, der über eine Benutzeroberflächeneinschränkung verfügt.

 

Threadpoolfunktionen

Die folgenden Funktionen werden mit Threadpools verwendet.

Funktion BESCHREIBUNG
CallbackMayRunLong Gibt an, dass der Rückruf möglicherweise nicht schnell zurückgegeben wird.
CancelThreadpoolIo Bricht die Benachrichtigung der Funktion StartThreadpoolIo ab.
CloseThreadpool Schließt den angegebenen Threadpool.
CloseThreadpoolCleanupGroup Schließt die angegebene Bereinigungsgruppe.
Closethreadpoolcleanupgroupmembers Gibt die Mitglieder der angegebenen Bereinigungsgruppe frei, wartet, bis alle Rückruffunktionen abgeschlossen sind, und bricht optional alle ausstehenden Rückruffunktionen ab.
CloseThreadpoolIo Gibt das angegebene E/A-Vervollständigungsobjekt frei.
CloseThreadpoolTimer Gibt das angegebene Timerobjekt frei.
CloseThreadpoolWait Gibt das angegebene Warteobjekt frei.
CloseThreadpoolWork Gibt das angegebene Arbeitsobjekt frei.
CreateThreadpool Weist einen neuen Pool von Threads zu, um Rückrufe auszuführen.
CreateThreadpoolCleanupGroup Erstellt eine Bereinigungsgruppe, mit der Anwendungen einen oder mehrere Threadpoolrückrufe nachverfolgen können.
CreateThreadpoolIo Erstellt ein neues E/A-Vervollständigungsobjekt.
CreateThreadpoolTimer Erstellt ein neues Timerobjekt.
CreateThreadpoolWait Erstellt ein neues Warteobjekt.
CreateThreadpoolWork Erstellt ein neues Arbeitsobjekt.
DestroyThreadpoolEnvironment Löscht die angegebene Rückrufumgebung. Rufen Sie diese Funktion auf, wenn die Rückrufumgebung zum Erstellen neuer Threadpoolobjekte nicht mehr benötigt wird.
DisassociateCurrentThreadFromCallback Entfernt die Zuordnung zwischen der aktuell ausgeführten Rückruffunktion und dem Objekt, das den Rückruf initiiert hat. Der aktuelle Thread zählt nicht mehr als Ausführen eines Rückrufs im Namen des Objekts.
FreeLibraryWhenCallbackReturns Gibt die DLL an, die der Threadpool entladen wird, wenn der aktuelle Rückruf abgeschlossen ist.
InitializeThreadpoolEnvironment Initialisiert eine Rückrufumgebung.
IsThreadpoolTimerSet Bestimmt, ob das angegebene Timerobjekt derzeit festgelegt ist.
LeaveCriticalSectionWhenCallbackReturns Gibt den kritischen Abschnitt an, den der Threadpool freigeben wird, wenn der aktuelle Rückruf abgeschlossen ist.
QueryThreadpoolStackInformation Ruft die Stapelreserve- und Commitgrößen für Threads im angegebenen Threadpool ab.
ReleaseMutexWhenCallbackReturns Gibt den Mutex an, den der Threadpool freigeben wird, wenn der aktuelle Rückruf abgeschlossen ist.
ReleaseSemaphoreWhenCallbackReturns Gibt den Semaphor an, den der Threadpool freigeben wird, wenn der aktuelle Rückruf abgeschlossen ist.
SetEventWhenCallbackReturns Gibt das Ereignis an, das der Threadpool festlegt, wenn der aktuelle Rückruf abgeschlossen ist.
SetThreadpoolCallbackCleanupGroup Ordnet die angegebene Bereinigungsgruppe der angegebenen Rückrufumgebung zu.
SetThreadpoolCallbackLibrary Stellt sicher, dass die angegebene DLL geladen bleibt, solange ausstehende Rückrufe vorhanden sind.
SetThreadpoolCallbackPersistent Gibt an, dass der Rückruf in einem persistenten Thread ausgeführt werden soll.
SetThreadpoolCallbackPool Legt den Threadpool fest, der beim Generieren von Rückrufen verwendet werden soll.
SetThreadpoolCallbackPriority Gibt die Priorität einer Rückruffunktion im Verhältnis zu anderen Arbeitselementen im selben Threadpool an.
SetThreadpoolCallbackRunsLong Gibt an, dass Rückrufe, die dieser Rückrufumgebung zugeordnet sind, möglicherweise nicht schnell zurückgegeben werden.
SetThreadpoolStackInformation Legt die Stapelreserve- und Commitgrößen für neue Threads im angegebenen Threadpool fest.
SetThreadpoolThreadMaximum Legt die maximale Anzahl von Threads fest, die der angegebene Threadpool Verarbeitungsrückrufen zuordnen kann.
SetThreadpoolThreadMinimum Legt die Mindestanzahl von Threads fest, die der angegebene Threadpool für die Verarbeitung von Rückrufen zur Verfügung stellen muss.
SetThreadpoolTimerEx Legt das Timerobjekt fest. Ein Workerthread ruft den Rückruf des Zeitgeberobjekts auf, nachdem das angegebene Timeout abläuft.
SetThreadpoolTimer Legt das Timerobjekt fest. Ein Workerthread ruft den Rückruf des Zeitgeberobjekts auf, nachdem das angegebene Timeout abläuft.
SetThreadpoolWait Legt das Warteobjekt fest. Ein Workerthread ruft die Rückruffunktion des Warteobjekts auf, nachdem das Handle signalisiert wird oder das angegebene Timeout abläuft.
SetThreadpoolWaitEx Legt das Warteobjekt fest. Ein Workerthread ruft die Rückruffunktion des Warteobjekts auf, nachdem das Handle signalisiert wird oder das angegebene Timeout abläuft.
StartThreadpoolIo Benachrichtigt den Threadpool, dass E/A-Vorgänge möglicherweise für das angegebene E/A-Vervollständigungsobjekt beginnen können. Ein Workerthread ruft die Rückruffunktion des E/A-Vervollständigungsobjekts auf, nachdem der Vorgang für das an dieses Objekt gebundene Dateihandle abgeschlossen wurde.
SubmitThreadpoolWork Sendet ein Arbeitsobjekt im Threadpool. Ein Workerthread ruft die Rückruffunktion des Arbeitsobjekts auf.
TpInitializeCallbackEnviron Initialisiert eine Rückrufumgebung für den Threadpool.
TpDestroyCallbackEnviron Löscht die angegebene Rückrufumgebung. Rufen Sie diese Funktion auf, wenn die Rückrufumgebung zum Erstellen neuer Threadpoolobjekte nicht mehr benötigt wird.
TpSetCallbackActivationContext Weist der Rückrufumgebung einen Aktivierungskontext zu.
TpSetCallbackCleanupGroup Ordnet die angegebene Bereinigungsgruppe der angegebenen Rückrufumgebung zu.
TpSetCallbackFinalizationCallback Gibt eine Funktion an, die aufgerufen werden soll, wenn die Rückrufumgebung abgeschlossen ist.
TpSetCallbackLongFunction Gibt an, dass Rückrufe, die dieser Rückrufumgebung zugeordnet sind, möglicherweise nicht schnell zurückgegeben werden.
TpSetCallbackNoActivationContext Gibt an, dass die Rückrufumgebung keinen Aktivierungskontext aufweist.
TpSetCallbackPersistent Gibt an, dass der Rückruf in einem persistenten Thread ausgeführt werden soll.
TpSetCallbackPriority Gibt die Priorität einer Rückruffunktion im Verhältnis zu anderen Arbeitselementen im selben Threadpool an.
TpSetCallbackRaceWithDll Stellt sicher, dass die angegebene DLL geladen bleibt, solange ausstehende Rückrufe vorhanden sind.
TpSetCallbackThreadpool Weist einer Rückrufumgebung einen Threadpool zu.
TrySubmitThreadpoolCallback Fordert an, dass ein Threadpool-Workerthread die angegebene Rückruffunktion aufruft.
WaitForThreadpoolIoCallbacks Wartet, bis ausstehende E/A-Vervollständigungsrückrufe abgeschlossen sind, und bricht optional ausstehende Rückrufe ab, die noch nicht ausgeführt wurden.
WaitForThreadpoolTimerCallbacks Wartet, bis ausstehende Timerrückrufe abgeschlossen sind, und bricht ausstehende Rückrufe, die noch nicht ausgeführt werden, optional ab.
WaitForThreadpoolWaitCallbacks Wartet, bis ausstehende Rückrufe abgeschlossen sind, und bricht ausstehende Rückrufe, die noch nicht ausgeführt werden, optional ab.
WaitForThreadpoolWorkCallbacks Wartet, bis ausstehende Arbeitsrückrufe abgeschlossen sind, und bricht optional ausstehende Rückrufe ab, die noch nicht ausgeführt werden.

 

Die folgenden Funktionen sind Teil der ursprünglichen Threadpooling-API .

Funktion BESCHREIBUNG
BindIoCompletionCallback Ordnet den E/A-Vervollständigungsport im Besitz des Threadpools dem angegebenen Dateihandle zu. Nach Abschluss einer E/A-Anforderung, die diese Datei umfasst, führt ein Nicht-E/A-Workerthread die angegebene Rückruffunktion aus.
Queueuserworkitem Stellt ein Arbeitselement für einen Workerthread im Threadpool in die Warteschlange.
Registerwaitforsingleobject Weist einen Wartethread im Threadpool an, auf das -Objekt zu warten.
Aufheben der RegistrierungWaitEx Wartet, bis sich eines oder alle angegebenen Objekte im Signalzustand befinden oder das Timeoutintervall verstrichen ist.

 

Threadreihenfolgedienstfunktionen

Die folgenden Funktionen werden mit dem Threadreihenfolgedienst verwendet.

Funktion BESCHREIBUNG
AvQuerySystemResponsiveness Ruft die Einstellung für die Reaktionsfähigkeit des Systems ab, die vom Multimediaklassenplanerdienst verwendet wird.
AvRtCreateThreadOrderingGroup Erstellt eine Threadreihenfolgegruppe.
AvRtCreateThreadOrderingGroupEx Erstellt eine Threadreihenfolgegruppe und ordnet den Serverthread einer Aufgabe zu.
AvRtDeleteThreadOrderingGroup Löscht die angegebene Threadreihenfolgegruppe, die vom Aufrufer erstellt wurde.
AvRtJoinThreadOrderingGroup Verknüpft Clientthreads mit einer Threadreihenfolgegruppe.
AvRtLeaveThreadOrderingGroup Ermöglicht Clientthreads, eine Threadreihenfolgegruppe zu verlassen.
AvRtWaitOnThreadOrderingGroup Ermöglicht Clientthreads einer Threadreihenfolgegruppe zu warten, bis sie ausgeführt werden sollen.

 

Multimedia-Klassenplanerdienstfunktionen

Die folgenden Funktionen werden mit dem Multimediaklassenplanerdienst verwendet.

Funktion BESCHREIBUNG
AvRevertMmThreadCharacteristics Gibt an, dass ein Thread keine der angegebenen Aufgabe zugeordneten Aufgaben mehr ausführt.
AvSetMmMaxThreadCharacteristics Ordnet den aufrufenden Thread den angegebenen Aufgaben zu.
AvSetMmThreadCharacteristics Ordnet den aufrufenden Thread der angegebenen Aufgabe zu.
AvSetMmThreadPriority Passt die Threadpriorität des aufrufenden Threads relativ zu anderen Threads an, die dieselbe Aufgabe ausführen.

 

Faserfunktionen

Die folgenden Funktionen werden mit Fasern verwendet.

Funktion BESCHREIBUNG
ConvertFiberToThread Konvertiert die aktuelle Faser in einen Thread.
ConvertThreadToFiber Konvertiert den aktuellen Thread in eine Faser.
ConvertThreadToFiberEx Konvertiert den aktuellen Thread in eine Faser.
CreateFiber Weist ein Fiberobjekt zu, weist ihm einen Stapel zu und richtet die Ausführung so ein, dass sie an der angegebenen Startadresse beginnt.
CreateFiberEx Weist ein Fiberobjekt zu, weist ihm einen Stapel zu und richtet die Ausführung so ein, dass sie an der angegebenen Startadresse beginnt.
DeleteFiber Löscht eine vorhandene Faser.
FiberProc Eine anwendungsdefinierte Funktion, die mit der CreateFiber-Funktion verwendet wird.
FlsAlloc Weist einen FLS-Index (Fiber Local Storage) zu.
FlsFree Gibt einen FLS-Index frei.
FlsGetValue Ruft den Wert im FLS-Slot der aufrufenden Faser für einen angegebenen FLS-Index ab.
FlsSetValue Speichert einen Wert im FLS-Slot der aufrufenden Faser für einen angegebenen FLS-Index.
IsThreadAFiber Bestimmt, ob es sich bei dem aktuellen Thread um eine Faser handelt.
SwitchToFiber Plant eine Faser.

 

NUMA-Unterstützungsfunktionen

Die folgenden Funktionen bieten NUMA-Unterstützung.

Funktion BESCHREIBUNG
AllocateUserPhysicalPagesNuma Reserviert oder committent eine Speicherregion innerhalb des virtuellen Adressraums des angegebenen Prozesses und gibt den NUMA-Knoten für den physischen Arbeitsspeicher an.
GetLogicalProcessorInformation Ruft Informationen zu logischen Prozessoren und zugehöriger Hardware ab.
GetNumaAvailableMemoryNode Ruft die Menge an Arbeitsspeicher ab, die im angegebenen Knoten verfügbar ist.
GetNumaAvailableMemoryNodeEx Ruft die Menge an Arbeitsspeicher ab, die im angegebenen Knoten als USHORT-Wert verfügbar ist.
GetNumaHighestNodeNumber Ruft den Knoten ab, der derzeit die höchste Anzahl aufweist.
GetNumaNodeNumberFromHandle Ruft den NUMA-Knoten ab, der dem zugrunde liegenden Gerät für ein Dateihandle zugeordnet ist.
GetNumaNodeProcessorMask Ruft die Prozessormaske für den angegebenen Knoten ab.
GetNumaNodeProcessorMaskEx Ruft die Prozessormaske für den angegebenen NUMA-Knoten als USHORT-Wert ab.
GetNumaProcessorNode Ruft die Knotennummer für den angegebenen Prozessor ab.
GetNumaProcessorNodeEx Ruft die Knotennummer des angegebenen logischen Prozessors als USHORT-Wert ab.
GetNumaProximityNode Ruft die Knotennummer für den angegebenen Näherungsbezeichner ab.
GetNumaProximityNodeEx Ruft die Knotennummer als USHORT-Wert für den angegebenen Näherungsbezeichner ab.
VirtualAllocExNuma Reserviert oder committet eine Speicherregion innerhalb des virtuellen Adressraums des angegebenen Prozesses und gibt den NUMA-Knoten für den physischen Speicher an.

 

Prozessorfunktionen

Die folgenden Funktionen werden mit logischen Prozessoren und Prozessorgruppen verwendet.

Funktion BESCHREIBUNG
GetActiveProcessorCount Gibt die Anzahl der aktiven Prozessoren in einer Prozessorgruppe oder im System zurück.
GetActiveProcessorGroupCount Gibt die Anzahl der aktiven Prozessorgruppen im System zurück.
GetCurrentProcessorNumber Ruft die Nummer des Prozessors ab, auf dem der aktuelle Thread während des Aufrufs dieser Funktion ausgeführt wurde.
GetCurrentProcessorNumberEx Ruft die Prozessorgruppe und die Nummer des logischen Prozessors ab, in dem der aufrufende Thread ausgeführt wird.
GetLogicalProcessorInformation Ruft Informationen zu logischen Prozessoren und zugehöriger Hardware ab.
GetLogicalProcessorInformationEx Ruft Informationen zu den Beziehungen von logischen Prozessoren und zugehöriger Hardware ab.
GetMaximumProcessorCount Gibt die maximale Anzahl logischer Prozessoren zurück, über die eine Prozessorgruppe oder das System verfügen kann.
GetMaximumProcessorGroupCount Gibt die maximale Anzahl von Prozessorgruppen zurück, die das System haben kann.
QueryIdleProcessorCycleTime Ruft die Zykluszeit für den Leerlaufthread jedes Prozessors im System ab.
QueryIdleProcessorCycleTimeEx Ruft die akkumulierte Zykluszeit für den Thread im Leerlauf auf jedem logischen Prozessor in der angegebenen Prozessorgruppe ab.

 

User-Mode Planungsfunktionen

Die folgenden Funktionen werden mit der Benutzermodusplanung (UMS) verwendet.

Funktion BESCHREIBUNG
CreateUmsCompletionList Erstellt eine UMS-Vervollständigungsliste.
CreateUmsThreadContext Erstellt einen UMS-Threadkontext, der einen UMS-Workerthread darstellt.
DeleteUmsCompletionList Löscht die angegebene UMS-Vervollständigungsliste. Die Liste muss leer sein.
DeleteUmsThreadContext Löscht den angegebenen UMS-Threadkontext. Der Thread muss beendet werden.
DequeueUmsCompletionListItems Ruft UMS-Arbeitsthreads aus der angegebenen UMS-Vervollständigungsliste ab.
EnterUmsSchedulingMode Konvertiert den aufrufenden Thread in einen UMS-Planerthread.
ExecuteUmsThread Führt den angegebenen UMS-Workerthread aus.
GetCurrentUmsThread Gibt den UMS-Threadkontext des aufrufenden UMS-Threads zurück.
GetNextUmsListItem Gibt den nächsten UMS-Threadkontext in einer Liste von UMS-Threadkontexten zurück.
GetUmsCompletionListEvent Ruft ein Handle für das Ereignis ab, das der angegebenen UMS-Vervollständigungsliste zugeordnet ist.
GetUmsSystemThreadInformation Fragt ab, ob der angegebene Thread ein UMS-Planerthread, ein UMS-Workerthread oder ein Nicht-UMS-Thread ist.
QueryUmsThreadInformation Ruft Informationen zum angegebenen UMS-Workerthread ab.
SetUmsThreadInformation Legt anwendungsspezifische Kontextinformationen für den angegebenen UMS-Workerthread fest.
UmsSchedulerProc Die anwendungsdefinierte UMS-Scheduler-Einstiegspunktfunktion, die einer UMS-Vervollständigungsliste zugeordnet ist.
UmsThreadYield Gibt die Steuerung an den UMS-Planerthread aus, auf dem der aufrufende UMS-Workerthread ausgeführt wird.

 

Veraltete Funktionen