共用方式為


RTL_SPLAY_LINKS結構 (ntddk.h)

RTL_SPLAY_LINKS 結構是不透明的結構,由系統用來表示splay連結樹狀節點。

語法

typedef struct _RTL_SPLAY_LINKS {
  struct _RTL_SPLAY_LINKS *Parent;
  struct _RTL_SPLAY_LINKS *LeftChild;
  struct _RTL_SPLAY_LINKS *RightChild;
} RTL_SPLAY_LINKS;

成員

Parent

這個節點之父節點的不透明指標。 如果 splay 連結樹中只有一個節點存在,這個成員的值就會 NULL

LeftChild

這個節點左子節點的不透明指標。 如果沒有左子節點存在,這個成員的值會 NULL

RightChild

這個節點右子節點的不透明指標。 如果沒有任何右子節點存在,則這個成員的值會 NULL

言論

一般而言,splay 連結樹狀結構的每個節點都包含使用者定義的結構。 每個這類使用者定義節點都必須包含初始化RTL_SPLAY_LINKS結構。 若要初始化RTL_SPLAY_LINKS結構,請呼叫 RtlInitializeSplayLinks 巨集。 (傳遞包含在使用者定義結構內的RTL_SPLAY_LINKS成員位址。

針對具有一或多個節點的splay連結樹狀結構,新的節點通常會初始化,如下所示:

  1. 使用 RtlLeftChild 和/或 RtlRightChild 來尋找新節點的插入點。 也就是說,取得新節點父節點的正確位址。 (新節點會附加至父節點的左邊或右邊。
  2. 使用 RtlInitializeSplayLinks,使用上一個步驟中找到的父節點位址來初始化新節點。
  3. 使用 RtlInsertAsLeftChild 或適當地 RtlInsertAsRightChild,將新節點插入 splay 樹狀結構。
  4. 使用新節點的位址呼叫 RtlSplay。 (新節點會變成splay樹狀結構的根目錄。
RtlXxx 播放樹例程的呼叫端負責同步處理對 splay 樹狀結構的存取。 如需如何同步存取 splay 樹狀結構的詳細資訊,請參閱 鎖定、死結和同步處理管理硬體優先順序

要求

要求 價值
最低支援的用戶端 適用於所有支援的 Windows 版本。
標頭 ntddk.h (include Fltkernel.h, Ntifs.h, Ntddk.h)

另請參閱

RtlInitializeSplayLinks

RtlInsertAsLeftChild

RtlInsertAsRightChild

RtlLeftChild

RtlRightChild

RtlSplay