RtlInsertAsRightChild 関数 (ntddk.h)

RtlInsertAsRightChild ルーチンは、ツリー内の特定のノードの適切な子として、特定の表示リンクをツリーに挿入します。

構文

void RtlInsertAsRightChild(
  [in] PRTL_SPLAY_LINKS ParentLinks,
  [in] PRTL_SPLAY_LINKS ChildLinks
);

パラメーター

[in] ParentLinks

ChildLinks を適切な子として挿入するツリー内のノードへのポインター。

[in] ChildLinks

ツリーに挿入する splay リンク ノードへのポインター。 ノードは 、RtlInitializeSplayLinks を呼び出して初期化されている必要があります。

戻り値

なし

解説

RtlInsertAsRightChild の呼び出し元は、次の条件を満たす必要があります。

  • ParentLinks のノードには、適切な子が必要ありません。

    呼び出し元は、 RtlRightChild を呼び出すことによって、ノードに既に適切な子があるかどうかを判断できます。 RtlRightChild がNULL を返す場合、ParentLinksRtlInsertAsRightChild に対して有効なパラメーターです。

  • ChildLinks のノードには親が必要ありません。

    呼び出し元は、 RtlIsRoot または RtlParent を呼び出すことによって、このノードに親が既にあるかどうかを判断できます。 ChildLinks で呼び出されたときに RtlIsRootTRUE を返す場合、ChildLinksRtlInsertAsRightChild に対する有効なパラメーターです。 RtlParent がChildLinks への同等のポインターを返す場合、ChildLinksRtlInsertAsRightChild にも有効なパラメーターです。

Rtl スプレイ リンク ルーチンの呼び出し元は、splay リンク ツリーへのアクセスを同期する役割を担います。 高速ミューテックスは、この目的で使用する最も効率的な同期メカニズムです。

RtlInsertAsRightChild の呼び出し元は、splay リンク ツリーと ChildLinks ノードが非ページの場合、IRQL <= DISPATCH_LEVELで実行されている必要があります。 通常、呼び出し元は IRQL PASSIVE_LEVELで実行されます。

要件

要件
対象プラットフォーム デスクトップ
Header ntddk.h (Ntddk.h、Ntifs.h を含む)
IRQL 「解説」を参照してください。

こちらもご覧ください

RtlInitializeSplayLinks

RtlInsertAsLeftChild

RtlIsRoot

RtlParent

RtlRightChild

RtlSplay