RxPrepareContextForReuse 函式 (rxcontx.h)

RxPrepareContextForReuse 會重設所有已 (ReferenceCount 成員設定為 RX_CONTEXT零) ,藉此準備RX_CONTEXT數據結構以供重複使用。 從 IRP 取得的參數不會修改。

語法

void RxPrepareContextForReuse(
  [in, out] IN OUT PRX_CONTEXT RxContext
);

參數

[in, out] RxContext

RX_CONTEXT 結構的指標。

傳回值

備註

RxPrepareContextForReuse 例程會檢查RX_CONTEXT結構中的數個作業特定成員是否為 NULL,再將 ReferenceCount 成員設定為零。 必須符合的這些作業特定測試包括下列各項:

  • 如果相關聯 IRP 的 MajorFunction 成員是IRP_MJ_CREATE, 則 Create.CanonicalNameBuffer 成員必須是 NULL
  • 如果相關聯 IRP 的 MajorFunction 成員IRP_MJ_READ或IRP_MJ_WRITE,則 RxContextSerializationQLinks.Flink 和 RxContextSerializationQLinks.Blink 成員必須是 NULL
如果不符合上述任一條件, RxPrepareContextForReuse 會導致系統在已檢查的組建上判斷提示。

RxPrepareContextForReuse 例程通常只能由直接重新初始化RX_CONTEXT結構的網路迷你重新導向器驅動程式使用。

規格需求

需求
目標平台 桌面
標頭 rxcontx.h (包含 Rxprocs.h rxcontx.h)
IRQL <= APC_LEVEL

另請參閱

RxCompleteRequest

RxCompleteRequest_Real

RxCreateRxContext

RxDereference

RxDereferenceAndDeleteRxContext_Real

RxInitializeContext

RxResumeBlockedOperations_Serially

__RxSynchronizeBlockingOperations

__RxSynchronizeBlockingOperationsMaybeDroppingFcbLock