Функция RtlSplay (ntddk.h)
Подпрограмма RtlSplay перебалансирует или "splays", дерево ссылок splay вокруг указанной ссылки splay, что делает эту связь новым корнем дерева.
Синтаксис
NTSYSAPI PRTL_SPLAY_LINKS RtlSplay(
[in, out] PRTL_SPLAY_LINKS Links
);
Параметры
[in, out] Links
Указатель на узел, который станет корневым узлом перебалансированного дерева ссылок splay. Узел должен быть инициализирован путем вызова RtlInitializeSplayLinks.
Возвращаемое значение
RtlSplay возвращает указатель Связи , когда он перераспреобно сбалансировал дерево.
Комментарии
Если L является заданной ссылкой, P — родительским узлом, а G — узлом бабушки и дедушки, RtlSplay перебалансирует дерево ссылок splay в соответствии с одним из шести шаблонов, показанных на следующем рисунке.
Вызывающие подпрограммы связи Rtl splay отвечают за синхронизацию доступа к дереву ссылок splay. Быстрый мьютекс является наиболее эффективным механизмом синхронизации для этой цели.
Вызывающие функции RtlSplay должны выполняться в irQL <= DISPATCH_LEVEL, если дерево не пагрянуло. Как правило, вызывающие абоненты выполняются на PASSIVE_LEVEL IRQL.
Требования
Требование | Значение |
---|---|
Целевая платформа | Универсальное |
Верхняя часть | ntddk.h (включая Ntddk.h, Ntifs.h) |
Библиотека | NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | См. раздел "Примечания". |