Freigeben über


FltApplyPriorityInfoThread-Funktion (fltkernel.h)

Die FltApplyPriorityInfoThread Routine wird von einem Minifiltertreiber verwendet, um Prioritätsinformationen auf einen Thread anzuwenden.

Syntax

NTSTATUS FLTAPI FltApplyPriorityInfoThread(
  [in]            PIO_PRIORITY_INFO InputPriorityInfo,
  [out, optional] PIO_PRIORITY_INFO OutputPriorityInfo,
  [in]            PETHREAD          Thread
);

Parameter

[in] InputPriorityInfo

Ein Zeiger auf eine IO_PRIORITY_INFO Struktur, die zum Festlegen des Prioritätszustands des angegebenen Threads verwendet wird. Diese IO_PRIORITY_INFO Struktur muss ihre Member durch eine geeignete Routine festgelegt haben – siehe den folgenden Abschnitt "Hinweise". Dieser Parameter ist erforderlich und kann nicht NULL-werden.

[out, optional] OutputPriorityInfo

Ein optionaler Zeiger auf eine IO_PRIORITY_INFO Struktur, die verwendet wird, um den Prioritätsstatus des Threads zu empfangen, bevor die InputPriorityInfo Prioritätsinformationen auf den Thread angewendet wird, indem FltApplyPriorityInfoThread. Dieser Parameter ist optional und kann NULL-werden.

[in] Thread

Ein Zeiger auf den Thread, in dem die InputPriorityInfo Prioritätsinformationen angewendet werden sollen. Dieser Parameter ist erforderlich und kann nicht NULL-werden.

Rückgabewert

Wenn die Threadprioritätsinformationen, auf die durch den Parameter InputPriorityInfo verwiesen wird, erfolgreich auf den angegebenen Thread angewendet werden, gibt die FltApplyPriorityInfoThread Routine STATUS_SUCCESS zurück. Andernfalls wird ein entsprechender NTSTATUS-Wert zurückgegeben, z. B. einer der folgenden:

Rückgabecode Beschreibung
STATUS_INVALID_PARAMETER_1
Die Struktur, auf die die InputPriorityInfo Parameter verweist, wurde initialisiert, aber mindestens ein Elementwert ist ungültig. Dies ist ein Fehlercode.

Bemerkungen

Diese Routine ist ab Windows Vista verfügbar.

Die FltApplyPriorityInfoThread Routine legt die E/A-Priorität, die Auslagerungspriorität und die Threadpriorität des angegebenen Threads basierend auf den Memberwerten der IO_PRIORITY_INFO Struktur fest, auf die der InputPriorityInfo Parameter verweist. Dadurch kann ein zuvor gespeicherter Satz von Prioritätsinformationen, die von der FltRetrieveIoPriorityInfo oder FltApplyPriorityInfoThread Routine abgerufen werden, auf einen Thread angewendet werden.

Die ursprünglichen Werte des Zielthreads, bevor die InputPriorityInfo Prioritätswerte von der FltApplyPriorityInfoThread Routine angewendet werden, kann gespeichert werden, wenn ein gültiger OutputPriorityInfo Zeiger bereitgestellt wird. Beachten Sie, dass die struktur, auf die die OutputPriorityInfo verweist, Parameter nicht initialisiert werden muss.

Es ist sicher, denselben Zeiger auf eine einzelne IO_PRIORITY_INFO Struktur für die parameter InputPriorityInfo und OutputPriorityInfo bereitzustellen.

Hinweis Wenn die Memberwerte der IO_PRIORITY_INFO Struktur, auf die durch die InputPriorityInfo Parameter verwiesen wurde, nicht festgelegt wurden, müssen Sie diese Member festlegen, bevor Sie die FltApplyPriorityInfoThread Routine aufrufen, indem Sie eine der folgenden Methoden verwenden:
  • Rufen Sie die FltRetrieveIoPriorityInfo Routine auf.
  • Stellen Sie sicher, dass der aktuelle InputPriorityInfo Parameter der OutputPriorityInfo Parameter in einem vorherigen Aufruf der FltApplyPriorityInfoThread Routine war.
 

Anforderungen

Anforderung Wert
mindestens unterstützte Client- Verfügbar in Microsoft Windows Vista und höheren Versionen von Windows-Betriebssystemen.
Zielplattform- Universal
Header- fltkernel.h (include Fltkernel.h)
Library Fltmgr.lib
IRQL- <= DISPATCH_LEVEL

Siehe auch

FLT_CALLBACK_DATA

FltGetIoPriorityHint

FltGetIoPriorityHintFromCallbackData

FltGetIoPriorityHintFromFileObject

FltGetIoPriorityHintFromThread

FltRetrieveIoPriorityInfo

FltSetIoPriorityHintIntoCallbackData

FltSetIoPriorityHintIntoFileObject

FltSetIoPriorityHintIntoThread

IO_PRIORITY_INFO