Поделиться через


Функция RtlIsGenericTableEmpty (ntddk.h)

Подпрограмма RtlIsGenericTableEmpty определяет, пуста ли универсальная таблица.

Синтаксис

NTSYSAPI BOOLEAN RtlIsGenericTableEmpty(
  [in] PRTL_GENERIC_TABLE Table
);

Параметры

[in] Table

Указатель на универсальную таблицу (RTL_GENERIC_TABLE). Таблица должна быть инициализирована путем вызова RtlInitializeGenericTable.

Возвращаемое значение

RtlIsGenericTableEmpty возвращает FALSE, если таблица содержит один или несколько элементов, TRUE в противном случае.

Замечания

По умолчанию операционная система использует деревья воспроизведения для реализации универсальных таблиц. При некоторых обстоятельствах операции с деревом воспроизведения сделают дерево глубоким и узким и даже может превратить его в прямую линию. Очень глубокие деревья ухудшают производительность поиска. Вы можете обеспечить более сбалансированную, неглубокую реализацию универсальных таблиц с помощью деревьев Adelson-Velsky/Landis (AVL). Если вы хотите настроить универсальные подпрограммы таблиц для использования деревьев AVL вместо деревьев воспроизведения в драйвере, вставьте следующую инструкцию определения в общий файл заголовка перед включением Ntddk.h:

#define RTL_USE_AVL_TABLES 0

Если RTL_USE_AVL_TABLES не определен, необходимо использовать форму AVL универсальных подпрограмм таблиц. Например, используйте подпрограмму структуры RtlIsGenericTableEmptyAvl структура вместо RtlIsGenericTableEmpty. В вызове RtlIsGenericTableEmptyAvlвызывающий объект должен передать структуру таблицы RTL_AVL_TABLE, а не RTL_GENERIC_TABLE.

Вызывающие RtlIsGenericTableEmpty должны выполняться в ≤ APC_LEVEL, если выделенная вызывающим объектом память в таблица доступно для страницы.

Требования

Требование Ценность
минимальные поддерживаемые клиентские Эта подпрограмма доступна в Microsoft Windows 2000 и более поздних версиях.
целевая платформа Всеобщий
заголовка ntddk.h (include Ntddk.h, Ntifs.h)
библиотеки NtosKrnl.lib
DLL NtosKrnl.exe
IRQL <= APC_LEVEL (см. раздел "Примечания")

См. также

RtlInitializeGenericTable