RxResumeBlockedOperations_Serially-Funktion (rxcontx.h)
RxResumeBlockedOperations_Serially aktiviert ggf. den nächsten Wartethread in der serialisierten Blockierungs-E/A-Warteschlange.
Syntax
void RxResumeBlockedOperations_Serially(
[in, out] IN OUT PRX_CONTEXT RxContext,
[in, out] IN OUT PLIST_ENTRY BlockingIoQ
);
Parameter
[in, out] RxContext
Ein Zeiger auf die RX_CONTEXT Struktur des zu synchronisierenden Vorgangs.
[in, out] BlockingIoQ
Ein Zeiger auf die blockierende E/A-Warteschlange.
Rückgabewert
Nichts
Bemerkungen
RxResumeBlockedOperations_Serially aktiviert die nächste Arbeitsaufgabe in einer serialisierten Blockierungs-E/A-Warteschlange, sofern vorhanden. Die FCB-Struktur muss aufgrund des Verweises, der vom E/A-System auf dem Dateiobjekt gespeichert wird, weiterhin gültig sein und somit einen Schließenvorgang verhindern.
Eine serialisierte Blockierungs-E/A-Warteschlange ist eine Warteschlange, für die das FlagsForLowIo-Element der RX_CONTEXT Struktur, auf die durch RxContext verwiesen wird, die RXCONTEXT_FLAG4LOWIO_PIPE_SYNC_OPERATION Bitsatz aufweist.
RxResumeBlockedOperations_Serially führt diesen Vorgang aus, indem RxFsdPostRequest- aufgerufen wird, um den Vorgang an einen Arbeitsthread zu senden.
Die RxResumeBlockedOperations_Serially Routine wird normalerweise nicht direkt von einem Netzwerk-Miniumleitungstreiber aufgerufen, wird jedoch intern von RDBSS aufgerufen, wenn synchrone Lese- und Schreibvorgänge für eine benannte Pipe verarbeitet werden, die eine serialisierte Warteschlange erfordert.
Ein Netzwerk-Miniumleitungsmodul muss möglicherweise RxResumeBlockedOperations_Serially anrufen, wenn ein RX_CONTEXT mithilfe von __RxSynchronizeBlockingOperations oder __RxSynchronizeBlockingOperationsMaybeDroppingFcbLockin eine Synchronisierungswarteschlange gesetzt wurde.
Anforderungen
Anforderung | Wert |
---|---|
Zielplattform- | Desktop |
Header- | rxcontx.h (include Rxcontx.h) |
IRQL- | <= APC_LEVEL |
Siehe auch
RxDereferenceAndDeleteRxContext_Real