IPortWaveCyclic::Notify-Methode (portcls.h)

Die Notify -Methode benachrichtigt den Porttreiber, dass ein Interrupt aufgetreten ist, der den Fortschritt des DMA-Zeigers angibt. Er sollte von der Interrupt-Dienstroutine (ISR) des Miniporttreibers aufgerufen werden.

Syntax

void Notify(
  [in] PSERVICEGROUP ServiceGroup
);

Parameter

[in] ServiceGroup

Zeiger auf das IServiceGroup-Objekt des Miniporttreibers.

Rückgabewert

Keine

Bemerkungen

Diese Methode ist für eine genaue Zeitsteuerung von entscheidender Bedeutung. Miniport-Treiber rufen diese Methode in der Regel als Reaktion auf einen Benachrichtigungsunterbrechung auf, nachdem die Interruptquelle gelöscht wurde. Obwohl der Miniporttreiber andere Methoden verwenden kann, um zu bestimmen, wann diese Methode aufgerufen werden soll, ist eine genaue Zeitsteuerung wichtig und sollte beibehalten werden.

Wenn ein Adaptertreiber eine ISR installiert, übermittelt er einen ServiceContext-Parameter zusammen mit dem Einstiegspunkt des ISR (Ausführliche Informationen finden Sie unter Bereitstellen von ISR-Kontextinformationen). Wenn der Interrupt auftritt, ruft das Betriebssystem die ISR auf und übergibt ServiceContext als Aufrufparameter an die ISR. Obwohl die Bedeutung des ServiceContext-Parameters nur dem Treiberentwickler bekannt ist, handelt es sich in der Regel um einen Zeiger auf das Miniport-Objekt. Die ISR verwendet diesen Zeiger, um auf Informationen zum Miniportobjekt zuzugreifen.

Der Porttreiber ruft die IMiniportWaveCyclicStream::SetNotificationFreq-Methode auf, um die Häufigkeit anzugeben, mit der der ISR die Notify Methode aufrufen soll. In allen aktuellen Windows-Releases gibt der Porttreiber ein regelmäßiges Intervall von 10 Millisekunden zwischen aufeinander folgenden Benachrichtigungen an. Dieser Wert kann sich in einer zukünftigen Version ändern.

Der ServiceGroup-Parameter folgt den Referenzzählungskonventionen für COM-Objekte.

Anforderungen

Anforderung Wert
Zielplattform Universell
Header portcls.h (portcls.h einschließen)
IRQL Beliebige Ebene

Weitere Informationen

IMiniportWaveCyclicStream::SetNotificationFreq

IPortWaveCyclic

IServiceGroup