RxResumeBlockedOperations_Serially-Funktion (rxcontx.h)
RxResumeBlockedOperations_Serially aktiviert den nächsten wartenden Thread (falls vorhanden) in der serialisierten blockierenden 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
Keine
Bemerkungen
RxResumeBlockedOperations_Serially das nächste Arbeitselement in einer serialisierten blockierenden E/A-Warteschlange aktiviert, sofern vorhanden. Die FCB-Struktur muss aufgrund des Verweises, der vom E/A-System auf dem Dateiobjekt gespeichert wird, weiterhin gültig sein, wodurch ein Schließen-Vorgang verhindert wird.
Eine serialisierte blockierende E/A-Warteschlange ist eine Warteschlange, für die das FlagsForLowIo-Element der RX_CONTEXT Struktur, auf die von RxContext verwiesen wird, das RXCONTEXT_FLAG4LOWIO_PIPE_SYNC_OPERATION Bit festgelegt hat.
RxResumeBlockedOperations_Serially führt diesen Vorgang durch Aufrufen von RxFsdPostRequest aus, um den Vorgang in einem Workerthread zu posten.
Die RxResumeBlockedOperations_Serially Routine wird normalerweise nicht direkt von einem Netzwerk-Miniumleitungstreiber aufgerufen, sondern intern von RDBSS aufgerufen, wenn synchrone Lese- und Schreibvorgänge für eine benannte Pipe verarbeitet werden, die eine serialisierte Warteschlange erfordert.
Ein Netzwerkminiumleitungsor muss möglicherweise RxResumeBlockedOperations_Serially aufrufen, wenn ein RX_CONTEXT mithilfe von __RxSynchronizeBlockingOperations oder __RxSynchronizeBlockingOperationsMaybeDroppingFcbLock in einer Synchronisierungswarteschlange platziert wurde.
Anforderungen
Anforderung | Wert |
---|---|
Zielplattform | Desktop |
Kopfzeile | rxcontx.h (einschließlich Rxcontx.h) |
IRQL | <= APC_LEVEL |
Weitere Informationen
RxDereferenceAndDeleteRxContext_Real