Función ExInterlockedFlushSList (wdm.h)

La rutina ExInterlockedFlushSList quita de forma atómica todas las entradas de una lista vinculada secuenciada.

Sintaxis

NTKERNELAPI
PSLIST_ENTRY
FASTCALL
ExInterlockedFlushSList (
    _Inout_ PSLIST_HEADER ListHead
    );

Parámetros

[in, out] ListHead

Puntero a la estructura SLIST_HEADER que actúa como encabezado de la lista vinculada secuenciada.

Valor devuelto

Si había entradas en la lista especificada, ExInterlockedFlushSList devuelve un puntero a la primera estructura SLIST_ENTRY que era una entrada de la lista; de lo contrario, devuelve NULL.

Comentarios

ExInterlockedFlushSList no elimina las estructuras de SLIST_ENTRY que componen la lista; solo establece el puntero interno de ListHead al principio de la lista en NULL. El controlador debe liberar las entradas explícitamente.

La rutina devuelve un puntero a la primera estructura SLIST_ENTRY que estaba en la lista. El controlador puede usar este puntero para recorrer en iteración las entradas.

Para obtener más información sobre el uso de esta rutina para implementar una lista vinculada secuenciadamente, vea Singly and Doblemente vinculado Listas.

Los autores de llamadas de ExInterlockedFlushSList se pueden ejecutar en cualquier IRQL. El almacenamiento para el parámetro ListHead y las entradas de lista deben residir en todos los IRQL.

Requisitos

Requisito Value
Cliente mínimo compatible Disponible a partir de Windows 2000.
Plataforma de destino Universal
Encabezado wdm.h (incluya Wdm.h, Ntddk.h, Ntifs.h)
Library NtosKrnl.lib
Archivo DLL NtosKrnl.exe
IRQL Cualquier nivel (consulte la sección Comentarios)

Consulte también

ExInitializeSListHead