次の方法で共有


RxFinalizeNetRoot 関数 (fcb.h)

RxFinalizeNetRoot は、指定されたNET_ROOT構造体を最終処理します。 呼び出し元には、デバイス オブジェクトに関連付けられている netname テーブルに対する排他ロックが必要です。

構文

BOOLEAN RxFinalizeNetRoot(
  [out] OUT PNET_ROOT ThisNetRoot,
  [in]  IN BOOLEAN    RecursiveFinalize,
  [in]  IN BOOLEAN    ForceFinalize
);

パラメーター

[out] ThisNetRoot

最終処理するNET_ROOT構造体へのポインター。

[in] RecursiveFinalize

ファイナライズを再帰的に行う必要があるかどうかを示す値。

[in] ForceFinalize

参照カウントに関係なく、ファイナライズを強制するかどうかを示す値。

ForceFinalizeFALSE の場合、NET_ROOTを終了するには、ThisNetRoot によって指NET_ROOT構造体の NodeReferenceCount メンバーが 1 である必要があります。

戻り値

RxFinalizeNetRoot は、成功した場合は TRUE 、最終処理が行われなかった場合は FALSE を 返します。NET_ROOTの最終処理が既に進行中の場合、 RxFinalizeNetRootFALSE を返します。

注釈

RxFinalizeNetRoot ルーチンは、通常、ネットワーク ミニ リダイレクター ドライバーによって直接呼び出されません。 RDBSS は、NET_ROOTの参照カウントが 1 にデクリメントされるときに、このルーチンを内部的に呼び出します。

RxFinalizeNetRoot を呼び出す前に、デバイス オブジェクトに関連付けられている netname テーブルのロックを排他モードで取得する必要があります。

RecursiveFinalize パラメーターが TRUE の場合、RxFinalizeNetRoot は、このNET_ROOTに関連付けられている孤立した FCB 構造体を消去します。 これらの孤立した FCB は、 FcbState メンバーに FCB_STATE_ORPHANED フラグが設定されている構造体です。

要件

要件
対象プラットフォーム デスクトップ
Header fcb.h (Fcb.h、Mrxfcb.h を含む)
IRQL <= APC_LEVEL

こちらもご覧ください

RxCreateNetFcb

RxCreateNetFobx

RxCreateNetRoot

RxCreateSrvCall

RxCreateSrvOpen

RxCreateVNetRoot

RxDereference

RxFinalizeConnection

RxFinalizeNetFcb

RxFinalizeNetFobx

RxFinalizeSrvCall

RxFinalizeSrvOpen

RxFinalizeVNetRoot

RxFinishFcbInitialization

RxForceFinalizeAllVNetRoots

RxReference

RxSetSrvCallDomainName

RxpDereferenceNetFcb

RxpReferenceNetFcb

NET_ROOT構造体