StorPortRequestTimer 函数 (storport.h)
为 Storport 计时器上下文对象计划回调事件。
语法
ULONG StorPortRequestTimer(
[in] PVOID HwDeviceExtension,
[in] PVOID TimerHandle,
[in] PHW_TIMER_EX TimerCallback,
[in, optional] PVOID CallbackContext,
[in] ULONGLONG TimerValue,
[in] ULONGLONG TolerableDelay
);
参数
[in] HwDeviceExtension
指向主机总线适配器的硬件设备扩展的指针 (HBA) 。
[in] TimerHandle
指向 StorPortInitializeTimer 返回的计时器上下文的不透明缓冲区的指针。
[in] TimerCallback
指向微型端口提供的计时器回调例程的指针。 下面是为 PHW_TIMER_EX 定义的原型:
typedef
VOID
(*PHW_TIMER_EX) (
_In_ PVOID DeviceExtension,
_In_opt_ PVOID Context
);
[in, optional] CallbackContext
指向为计时器回调提供的上下文的微型端口的指针。
[in] TimerValue
计时器的超时值(以微秒为单位)。 将 TimerValue 设置为 0 将取消计时器。
[in] TolerableDelay
计时器允许的延迟(以微秒为单位)。 忽略小于 32 微秒的值, TolerableDelay 默认为 0。
返回值
StorPortRequestTimer 例程返回以下状态代码之一:
返回代码 | 说明 |
---|---|
|
没有足够的资源来延迟计时器的计划。 |
|
HwDeviceExtension、 TimerHandle 或 TimerCallback 为 NULL。
计时器上下文对象 TimerHandle 无效。 |
|
以前的计时器请求处于活动状态。 TimerValue > 0 且尚未调用 TimerCallback 。 |
|
已成功计划计时器请求。 |
注解
StorPortRequestTimer 例程在任何 IRQL 上都可调用。 但是,如果在 IRQL > DISPATCH_LEVEL时调用例程,计时器的计划将推迟到 IRQL <= DISPATCH_LEVEL。
要求
要求 | 值 |
---|---|
最低受支持的客户端 | 在 Windows 8 及更高版本的 Windows 中可用。 |
目标平台 | 通用 |
标头 | storport.h (包括 Storport.h) |
IRQL | 任意 |