Freigeben über


StorPortRequestTimer-Funktion (storport.h)

Plant ein Rückrufereignis für ein Storport-Timerkontextobjekt.

Syntax

ULONG StorPortRequestTimer(
  [in]           PVOID        HwDeviceExtension,
  [in]           PVOID        TimerHandle,
  [in]           PHW_TIMER_EX TimerCallback,
  [in, optional] PVOID        CallbackContext,
  [in]           ULONGLONG    TimerValue,
  [in]           ULONGLONG    TolerableDelay
);

Parameter

[in] HwDeviceExtension

Ein Zeiger auf die Hardwaregeräteerweiterung für den Host Bus Adapter (HBA).

[in] TimerHandle

Ein Zeiger auf einen undurchsichtigen Puffer für den von StorPortInitializeTimer zurückgegebenen Timerkontext.

[in] TimerCallback

Ein Zeiger auf eine vom Miniport bereitgestellte Timer-Rückrufroutine. Im Folgenden wird der Prototyp für PHW_TIMER_EX definiert:

typedef
VOID
(*PHW_TIMER_EX) (
  _In_ PVOID  DeviceExtension,
  _In_opt_ PVOID Context
  );

[in, optional] CallbackContext

Ein Zeiger auf einen Miniport, der für den Timerrückruf bereitgestellt wurde.

[in] TimerValue

Der Timeoutwert für den Timer in Mikrosekunden. Wenn TimerValue auf 0 festgelegt wird, wird der Timer abgebrochen.

[in] TolerableDelay

Die zulässige Verzögerung für den Timer in Mikrosekunden. Werte unter 32 Mikrosekunden werden ignoriert, und TolerableDelay ist standardmäßig 0.

Rückgabewert

Die StorPortRequestTimer-Routine gibt einen der folgenden status Codes zurück:

Rückgabecode Beschreibung
STOR_STATUS_INSUFFICIENT_RESOURCES
Nicht genügend Ressourcen verfügbar, um die Planung des Timers zu verzögern.
STOR_STATUS_INVALID_PARAMETER
HwDeviceExtension, TimerHandle oder TimerCallback ist NULL.

Das Timerkontextobjekt TimerHandle ist ungültig.

STOR_STATUS_BUSY
Eine vorherige Timeranforderung ist aktiv. TimerValue > 0 und TimerCallback wurde nicht aufgerufen.
STOR_STATUS_SUCCESS
Die Zeitgeberanforderung wurde erfolgreich geplant.

Hinweise

Die StorPortRequestTimer-Routine kann in jedem IRQL aufgerufen werden. Wenn die Routine jedoch aufgerufen wird, wenn IRQL > DISPATCH_LEVEL, wird die Zeitplanung des Timers zurückgestellt, bis IRQL <= DISPATCH_LEVEL.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Verfügbar in Windows 8 und höheren Versionen von Windows.
Zielplattform Universell
Header storport.h (einschließlich Storport.h)
IRQL Any

Weitere Informationen

HwStorTimer

StorPortFreeTimer

StorPortInitializeTimer

StorPortNotification