Função ExInterlockedFlushSList (wdm.h)
A rotina ExInterlockedFlushSList remove atomicamente todas as entradas de uma lista sequenciada vinculada.
Sintaxe
NTKERNELAPI
PSLIST_ENTRY
FASTCALL
ExInterlockedFlushSList (
_Inout_ PSLIST_HEADER ListHead
);
Parâmetros
[in, out] ListHead
Um ponteiro para a estrutura SLIST_HEADER que serve como o cabeçalho para a lista vinculada sequenciada.
Retornar valor
Se houver entradas na lista especificada, ExInterlockedFlushSList retornará um ponteiro para o primeiro SLIST_ENTRY estrutura que era uma entrada na lista; caso contrário, retornará NULL.
Comentários
ExInterlockedFlushSList não exclui as estruturas de SLIST_ENTRY que compõem a lista; ele define apenas o ponteiro interno de ListHead para o início da lista como NULL. O driver deve liberar as entradas explicitamente.
A rotina retorna um ponteiro para o primeiro SLIST_ENTRY estrutura que estava na lista. O driver pode usar esse ponteiro para iterar pelas entradas.
Para obter mais informações sobre como usar essa rotina para implementar uma lista sequenciada vinculada, consulte Singly e Doubly Linked Listas.
Os chamadores de ExInterlockedFlushSList podem estar em execução em qualquer IRQL. O armazenamento para o parâmetro ListHead e as entradas de lista devem ser residentes em todas as IRQLs.
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte | Disponível a partir do Windows 2000. |
Plataforma de Destino | Universal |
Cabeçalho | wdm.h (include Wdm.h, Ntddk.h, Ntifs.h) |
Biblioteca | NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | Qualquer nível (consulte a seção Comentários) |