Prozess- und Threadfunktionen
In diesem Thema werden die Prozess- und Threadfunktionen beschrieben.
- Verteilerwarteschlangenfunktion
- Prozessfunktionen
- Prozessenumerationsfunktionen
- Richtlinienfunktionen
- Threadfunktionen
- Erweiterte Attributfunktionen für Prozess und Thread
- WOW64-Funktionen
- Auftragsobjektfunktionen
- Threadpoolfunktionen
- Funktionen des Threadreihenfolgediensts
- Multimedia Class Scheduler Service Functions
- Faserfunktionen
- NUMA-Unterstützungsfunktionen
- Prozessorfunktionen
- Planungsfunktionen im Benutzermodus
- Veraltete Funktionen
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
- NtGetCurrentProcessorNumber
- NtQueryInformationProcess
- NtQueryInformationThread
- WinExec
- ZwQueryInformationProcess