Freigeben über


PHW_REQUEST_TIMEOUT_HANDLER Rückruffunktion (strmini.h)

Der Streamklassentreiber ruft die StrMiniRequestTimeout-Routine des Minidrivers auf, um dem Minidriver zu signalisieren, dass bei einer Anforderung ein Timeout aufgetreten ist.

Syntax

PHW_REQUEST_TIMEOUT_HANDLER PhwRequestTimeoutHandler;

void PhwRequestTimeoutHandler(
  [in] IN PHW_STREAM_REQUEST_BLOCK SRB
)
{...}

Parameter

[in] SRB

Zeiger auf die Streamanforderung, bei der ein Timeout aufgetreten ist.

Rückgabewert

Keine

Bemerkungen

Der Minidriver gibt diese Routine im HwRequestTimeoutHandler-Member seiner HW_INITIALIZATION_DATA-Struktur an. Der Minidriver übergibt diese Struktur an den Klassentreiber, wenn er sich selbst registriert, indem er StreamClassRegisterMinidriver aufruft.

Wenn der Klassentreiber zum ersten Mal eine Anforderung ausgibt, legt er einen Timeoutwert (in Sekunden) fest, bei dem das TimeoutCounter-Element des HW_STREAM_REQUEST_BLOCK von SRB angezeigt wird. Der Klassentreiber dekrementiert das TimeoutCounter-Element dieser Struktur einmal pro Sekunde. Bei einer Anforderung tritt ein Timeoutout auf, wenn der Klassentreiber TimeoutCounter auf Null erhöht. Zu diesem Zeitpunkt ruft der Klassentreiber StrMiniRequestTimeout auf, um alle sauber zu verarbeiten, die zum Beenden der Verarbeitung der Anforderung erforderlich sind.

Minidriver, die für die Synchronisierung auf den Klassentreiber angewiesen sind, sollten dem Klassentreiber nach erfolgreicher Verarbeitung des Anforderungstimeouts signalisieren, dass sie für eine andere Anforderung bereit sind, indem sie StreamClassStreamNotification oder StreamClassDeviceNotification mit der entsprechenden ReadyForNextXxx-Anforderung verwenden.

Anforderungen

Anforderung Wert
Zielplattform Desktop
Kopfzeile strmini.h (include Strmini.h)