FltApplyPriorityInfoThread 函数 (fltkernel.h)
微筛选器驱动程序使用 FltApplyPriorityInfoThread 例程将优先级信息应用于线程。
语法
NTSTATUS FLTAPI FltApplyPriorityInfoThread(
[in] PIO_PRIORITY_INFO InputPriorityInfo,
[out, optional] PIO_PRIORITY_INFO OutputPriorityInfo,
[in] PETHREAD Thread
);
参数
[in] InputPriorityInfo
指向 IO_PRIORITY_INFO 结构的指针,该结构用于设置给定线程的优先级状态。 此IO_PRIORITY_INFO结构必须由适当的例程设置其成员 - 请参阅以下“备注”部分。 此参数是必需的,不能为 NULL。
[out, optional] OutputPriorityInfo
指向 IO_PRIORITY_INFO 结构的可选指针,该结构用于在 FltApplyPriorityInfoThread 将 InputPriorityInfo 优先级信息应用于线程之前接收线程的优先级状态。 此参数是可选的,可以为 NULL。
[in] Thread
指向要在其中应用 InputPriorityInfo 优先级信息的线程的指针。 此参数是必需的,不能为 NULL。
返回值
如果 InputPriorityInfo 参数指向的线程优先级信息已成功应用于给定线程, 则 FltApplyPriorityInfoThread 例程返回STATUS_SUCCESS。 否则,它将返回相应的 NTSTATUS 值,如以下值之一:
返回代码 | 说明 |
---|---|
|
InputPriorityInfo 参数指向的结构已初始化,但其一个或多个成员值无效。 这是错误代码。 |
注解
此例程从 Windows Vista 开始可用。
FltApplyPriorityInfoThread 例程根据 InputPriorityInfo 参数指向的 IO_PRIORITY_INFO 结构的成员值设置给定线程的 I/O 优先级、分页优先级和线程优先级。 这允许将以前保存的一组优先级信息(由 FltRetrieveIoPriorityInfo 或 FltApplyPriorityInfoThread 例程获取)应用于线程。
如果提供了有效的 OutputPriorityInfo 指针,则可在 FltApplyPriorityInfoThread 例程应用 InputPriorityInfo 优先级值之前保存目标线程的原始值。 请注意, OutputPriorityInfo 参数指向的结构不需要初始化。
可以安全地为 InputPriorityInfo 和 OutputPriorityInfo 参数提供指向单个IO_PRIORITY_INFO结构的相同指针。
- 调用 FltRetrieveIoPriorityInfo 例程。
- 确保当前 InputPriorityInfo 参数是之前调用 FltApplyPriorityInfoThread 例程中的 OutputPriorityInfo 参数。
要求
要求 | 值 |
---|---|
最低受支持的客户端 | 在 Microsoft Windows Vista 和更高版本的 Windows 操作系统中可用。 |
目标平台 | 通用 |
标头 | fltkernel.h (包括 Fltkernel.h) |
Library | Fltmgr.lib |
IRQL | <= DISPATCH_LEVEL |
另请参阅
FltGetIoPriorityHintFromCallbackData
FltGetIoPriorityHintFromFileObject
FltGetIoPriorityHintFromThread
FltSetIoPriorityHintIntoCallbackData
FltSetIoPriorityHintIntoFileObject