Share via


Fonction FltApplyPriorityInfoThread (fltkernel.h)

La routine FltApplyPriorityInfoThread est utilisée par un pilote minifilter pour appliquer des informations de priorité à un thread.

Syntaxe

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

Paramètres

[in] InputPriorityInfo

Pointeur vers une structure IO_PRIORITY_INFO utilisée pour définir l’état de priorité du thread donné. Cette structure IO_PRIORITY_INFO doit avoir ses membres définis par une routine appropriée. Consultez la section Remarques suivante. Ce paramètre est obligatoire et ne peut pas être NULL.

[out, optional] OutputPriorityInfo

Pointeur facultatif vers une structure de IO_PRIORITY_INFO utilisée pour recevoir l’état de priorité du thread avant que les informations de priorité InputPriorityInfo ne s’appliquent au thread par FltApplyPriorityInfoThread. Ce paramètre est facultatif et peut être NULL.

[in] Thread

Pointeur vers le thread auquel appliquer les informations de priorité InputPriorityInfo . Ce paramètre est obligatoire et ne peut pas être NULL.

Valeur retournée

Si les informations de priorité du thread, pointées par le paramètre InputPriorityInfo , sont correctement appliquées au thread donné, la routine FltApplyPriorityInfoThread retourne STATUS_SUCCESS. Sinon, elle retourne une valeur NTSTATUS appropriée, telle que l’une des valeurs suivantes :

Code de retour Description
STATUS_INVALID_PARAMETER_1
La structure pointée par le paramètre InputPriorityInfo a été initialisée, mais une ou plusieurs de ses valeurs membres ne sont pas valides. Il s’agit d’un code d’erreur.

Remarques

Cette routine est disponible à partir de Windows Vista.

La routine FltApplyPriorityInfoThread définit la priorité d’E/S, la priorité de pagination et la priorité de thread du thread donné en fonction des valeurs membres de la structure IO_PRIORITY_INFO pointée par le paramètre InputPriorityInfo . Cela permet d’appliquer à un thread un ensemble d’informations de priorité précédemment enregistré, acquis par la routine FltRetrieveIoPriorityInfo ou FltApplyPriorityInfoThread .

Les valeurs d’origine du thread cible, avant que les valeurs de priorité InputPriorityInfo ne soient appliquées par la routine FltApplyPriorityInfoThread , peuvent être enregistrées si un pointeur OutputPriorityInfo valide est fourni. Notez que la structure pointée vers le paramètre OutputPriorityInfo n’a pas besoin d’être initialisée.

Il est sûr de fournir le même pointeur vers une structure de IO_PRIORITY_INFO unique pour les paramètres InputPriorityInfo et OutputPriorityInfo .

Note Si les valeurs membres de la structure IO_PRIORITY_INFO pointées par le paramètre InputPriorityInfo n’ont pas été définies, vous devez définir ces membres, avant d’appeler la routine FltApplyPriorityInfoThread , à l’aide de l’une des méthodes suivantes :
  • Appelez la routine FltRetrieveIoPriorityInfo .
  • Vérifiez que le paramètre InputPriorityInfo actuel était le paramètre OutputPriorityInfo dans un appel antérieur à la routine FltApplyPriorityInfoThread .
 

Configuration requise

Condition requise Valeur
Client minimal pris en charge Disponible dans Microsoft Windows Vista et versions ultérieures des systèmes d’exploitation Windows.
Plateforme cible Universal
En-tête fltkernel.h (inclure Fltkernel.h)
Bibliothèque Fltmgr.lib
IRQL <= DISPATCH_LEVEL

Voir aussi

FLT_CALLBACK_DATA

FltGetIoPriorityHint

FltGetIoPriorityHintFromCallbackData

FltGetIoPriorityHintFromFileObject

FltGetIoPriorityHintFromThread

FltRetrieveIoPriorityInfo

FltSetIoPriorityHintIntoCallbackData

FltSetIoPriorityHintIntoFileObject

FltSetIoPriorityHintIntoThread

IO_PRIORITY_INFO