Функция 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. Быстрый мьютекс является наиболее эффективным механизмом синхронизации, используемым для этой цели.

Вызывающие компоненты RtlDelete должны выполняться по адресу IRQL <= DISPATCH_LEVEL, если дерево ссылок splay не загружено. Как правило, вызывающие абоненты выполняются на PASSIVE_LEVEL IRQL.

Требования

Требование Значение
Целевая платформа Универсальное
Верхняя часть ntddk.h (включая Ntddk.h, Ntifs.h)
Библиотека NtosKrnl.lib
DLL NtosKrnl.exe
IRQL См. раздел "Примечания".

См. также раздел

RtlDeleteNoSplay

RtlInitializeSplayLinks

RtlInsertAsLeftChild

RtlInsertAsRightChild

RtlSplay