Função RtlIsGenericTableEmpty (ntddk.h)
A rotina de RtlIsGenericTableEmpty determina se uma tabela genérica está vazia.
Sintaxe
NTSYSAPI BOOLEAN RtlIsGenericTableEmpty(
[in] PRTL_GENERIC_TABLE Table
);
Parâmetros
[in] Table
Ponteiro para a tabela genérica (RTL_GENERIC_TABLE). A tabela deve ter sido inicializada chamando RtlInitializeGenericTable.
Valor de retorno
RtlIsGenericTableEmpty retornará FALSE se a tabela contiver um ou mais elementos, VERDADEIRO caso contrário.
Observações
Por padrão, o sistema operacional usa árvores de reprodução para implementar tabelas genéricas. Em algumas circunstâncias, as operações em uma árvore de reprodução tornarão a árvore profunda e estreita e podem até mesmo transformá-la em uma linha reta. Árvores muito profundas degradam o desempenho das pesquisas. Você pode garantir uma implementação de árvore mais equilibrada e superficial de tabelas genéricas usando árvores Desassocupadas/Landis (AVL). Se você quiser configurar as rotinas de tabela genéricas para usar árvores AVL em vez de reproduzir árvores no driver, insira a seguinte instrução de definição em um arquivo de cabeçalho comum antes de incluir Ntddk.h:
#define RTL_USE_AVL_TABLES 0
Se RTL_USE_AVL_TABLES não estiver definido, você deverá usar a forma AVL das rotinas de tabela genéricas. Por exemplo, use a rotina RtlIsGenericTableEmptyAvl Structure em vez de rtlIsGenericTableEmpty. Na chamada para RtlIsGenericTableEmptyAvl, o chamador deve passar uma estrutura de tabela RTL_AVL_TABLE em vez de RTL_GENERIC_TABLE.
Os chamadores do RtlIsGenericTableEmpty devem estar em execução no ≤ APC_LEVEL se a memória alocada pelo chamador no Table for paginável.
Requisitos
Requisito | Valor |
---|---|
de cliente com suporte mínimo | Essa rotina está disponível no Microsoft Windows 2000 e posterior. |
da Plataforma de Destino | Universal |
cabeçalho | ntddk.h (inclua Ntddk.h, Ntifs.h) |
biblioteca | NtosKrnl.lib |
de DLL | NtosKrnl.exe |
IRQL | <= APC_LEVEL (consulte a seção Comentários) |