RtlInsertAsLeftChild 函式 (ntddk.h)

RtlInsertAsLeftChild 例程會將splay連結節點插入樹狀結構中,做為指定節點的左子系。

語法

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

參數

[in] ParentLinks

樹狀結構中 ChildLinks 應該插入為左子系之節點的指標。

[in] ChildLinks

要插入樹狀結構之splay連結節點的指標。 節點必須透過呼叫 RtlInitializeSplayLinks 來初始化。

傳回值

備註

RtlInsertAsLeftChild 的呼叫端必須符合下列準則:

  • ParentLinks 上的節點必須沒有左子系。

    呼叫端可以藉由呼叫 RtlLeftChild 來判斷節點是否已經有左子系。 如果 RtlLeftChild 傳回 NULL,ParentLinks 是 RtlInsertAsLeftChild 的有效參數。

  • ChildLinks 上的節點不能有父代。

    呼叫端可以藉由呼叫 RtlIsRootRtlParent 來判斷此節點是否已經有父系。 如果使用 ChildLinks 呼叫 RtlIsRoot 時傳回 TRUE,ChildLinksRtlInsertAsLeftChild 的有效參數。 如果 RtlParent 傳ChildLinks 的對等指標, ChildLinksRtlInsertAsLeftChild 的有效參數。

Rtl splay 連結例程的呼叫端負責同步存取 splay 連結樹狀結構。 快速 Mutex 是用於此用途的最有效率同步處理機制。

RtlInsertAsLeftChild 的呼叫端必須在 IRQL <= DISPATCH_LEVEL,如果 splay 連結樹狀目錄和 ChildLinks 節點是非分頁的。 呼叫端通常會在 IRQL PASSIVE_LEVEL上執行。

規格需求

需求
目標平台 桌面
標頭 ntddk.h (包含 Ntddk.h、Ntifs.h)
IRQL 請參閱一節。

另請參閱

RtlInitializeSplayLinks

RtlInsertAsRightChild

RtlIsRoot

RtlLeftChild

RtlParent

RtlSplay