RtlDelete 函数 (ntddk.h)
RtlDelete 例程从 splay 链接树中删除指定的节点。
语法
NTSYSAPI PRTL_SPLAY_LINKS RtlDelete(
[in] PRTL_SPLAY_LINKS Links
);
参数
[in] Links
指向要删除的节点的指针。 节点必须已通过调用 RtlInitializeSplayLinks 进行初始化。
返回值
RtlDelete 返回指向从中删除给定节点的 splay 链接树根的指针,如果树为空,则返回 NULL 。
注解
删除节点后,RtlDelete 会重新平衡 splay 链接树。 若要删除节点而不重新平衡树,请使用 RtlDeleteNoSplay 而不是 RtlDelete。
Rtl splay 链接例程的调用方负责同步对 splay 链接树的访问。 快速互斥是用于此目的的最有效同步机制。
如果 splay 链接树未分页, 则 RtlDelete 的调用方必须在 IRQL <= DISPATCH_LEVEL 运行。 通常,调用方在 IRQL PASSIVE_LEVEL运行。
要求
要求 | 值 |
---|---|
目标平台 | 通用 |
标头 | ntddk.h (包括 Ntddk.h、Ntifs.h) |
Library | NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | 请参见“备注”部分。 |