RxIndicateChangeOfBufferingStateForSrvOpen function (rxprocs.h)
RxIndicateChangeOfBufferingStateForSrvOpen wird aufgerufen, um eine Änderungspufferstatusanforderung (z. B. eine Oplock-Unterbrechungsanzeige) für die spätere Verarbeitung zu registrieren. Wenn die erforderlichen Voraussetzungen erfüllt sind, wird der Oplock weiter verarbeitet.
Syntax
void RxIndicateChangeOfBufferingStateForSrvOpen(
PMRX_SRV_CALL SrvCall,
PMRX_SRV_OPEN SrvOpen,
PVOID SrvOpenKey,
PVOID Context
);
Parameter
SrvCall
Ein Zeiger auf die SRV_CALL Struktur.
SrvOpen
Ein Zeiger auf die SRV_OPEN Struktur.
SrvOpenKey
Ein Zeiger auf den Schlüssel für die SRV_OPEN Schlüsselstruktur.
Context
Ein Zeiger auf den Kontext, der während der Rückrufe für die Verarbeitung der Anforderung an den Netzwerkminiumleitungsmodul zurückgesendet werden soll.
Rückgabewert
Nichts
Bemerkungen
Diese Routine registriert die Änderungspufferstatusanforderung, indem sie entweder in die Registrierungsliste (DPC Level Processing) oder die entsprechende Verteiler-/Handlerliste eingefügt wird.
Dies ist eine Instanz, in der im Pufferzustand Anzeigeanzeigen vom Server den vom Client generierten Schlüssel verwenden (die SRV_OPEN Adresse selbst ist der beste Schlüssel, der verwendet werden kann). Dies bedeutet, dass keine weitere Suche erforderlich ist.
Wenn diese Routine jedoch auf DPC-Ebene aufgerufen wird, wird die Angabe so verarbeitet, als ob die Suche durchgeführt werden muss.
Wenn die Ressource für den FCB bereits von diesem Thread abgerufen wurde, wird die Anzeige des Pufferzustands sofort ohne weitere Verzögerung verarbeitet. RxIndicateChangeOfBufferingStateForSrvOpen aufruft RxChangeBufferingState sofort in diesem Fall.
Die internen Routinen, die von dieser Routine aufgerufen werden, können aufgrund eines Mangels an verfügbarem Arbeitsspeicher fehlschlagen (z. B. nicht ausgelagerter Poolspeicher nicht zuordnen), aber da dies eine VOID-Routine ist, wird kein Fehler zurückgegeben, wenn diese Bedingung auftritt.
Wenn eine Pufferstatusanforderung sofort verarbeitet werden kann, anstatt zu einem späteren Zeitpunkt in die Warteschlange gestellt zu werden, können RxChangeBufferingState- aufgerufen werden.
Anforderungen
Anforderung | Wert |
---|---|
Zielplattform- | Desktop |
Header- | rxprocs.h (einschließlich Rxprocs.h, Struchdr.h, Fcb.h) |
IRQL- | <= APC_LEVEL |