Función RtlNumberGenericTableElementsAvl (ntddk.h)
La rutina RtlNumberGenericTableElementsAvl devuelve el número de elementos de una tabla genérica.
Sintaxis
NTSYSAPI ULONG RtlNumberGenericTableElementsAvl(
[in] PRTL_AVL_TABLE Table
);
Parámetros
[in] Table
Puntero a la tabla genérica (RTL_AVL_TABLE). La tabla debe haberse inicializado llamando a RtlInitializeGenericTableAvl.
Valor devuelto
RtlNumberGenericTableElementsAvl devuelve el número de elementos almacenados actualmente en la tabla.
Comentarios
De forma predeterminada, el sistema operativo usa árboles de reproducción para implementar tablas genéricas, pero la rutina RtlNumberGenericTableElementsAvl solo funciona con árboles Adelson-Velsky/Landis (AVL). Para configurar las rutinas de tabla genéricas para usar árboles AVL en lugar de reproducir árboles en el controlador, inserte la siguiente instrucción define en un archivo de encabezado común antes de incluir Ntddk.h:
#define RTL_USE_AVL_TABLES 0
Si no se define RTL_USE_AVL_TABLES, debe usar el formato AVL de las rutinas de tabla genéricas. Por ejemplo, use la rutina RtlNumberGenericTableElementsAvl en lugar de RtlNumberGenericTableElements. En la llamada a RtlNumberGenericTableElementsAvl, el llamador debe pasar una estructura de tabla de RTL_AVL_TABLE en lugar de RTL_GENERIC_TABLE.
Llamadores de Rtl.. Las rutinas GenericTableAvl son responsables de sincronizar exclusivamente el acceso a la tabla genérica. Una exclusión mutua rápida exclusiva es el mecanismo de sincronización más eficaz que se usará para este fin.
Los autores de llamadas de RtlNumberGenericTableElementsAvl deben ejecutarse en IRQL < DISPATCH_LEVEL si la memoria asignada por el autor de la llamada para la tabla genérica es paginable.
Requisitos
Requisito | Value |
---|---|
Cliente mínimo compatible | Disponible a partir de Windows XP. |
Plataforma de destino | Universal |
Encabezado | ntddk.h (include Ntddk.h, Ntifs.h) |
Library | NtosKrnl.lib |
Archivo DLL | NtosKrnl.exe |
IRQL | < DISPATCH_LEVEL (consulte la sección Comentarios) |