Função ExInterlockedFlushSList (wdm.h)
A rotina ExInterlockedFlushSList remove atomicamente todas as entradas de uma lista vinculada sequenciadamente 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 sequenciadamente vinculada.
Valor de retorno
Se houver entradas na lista especificada, ExInterlockedFlushSList retornará um ponteiro para a primeira estrutura SLIST_ENTRY que era uma entrada na lista; caso contrário, ele retorna NULL.
Observações
ExInterlockedFlushSList não exclui as estruturas de SLIST_ENTRY que compõem a lista; ele define apenas o ponteiro interno do ListHead para o início da lista para NULL. O driver deve liberar as entradas explicitamente.
A rotina retorna um ponteiro para a primeira estrutura de SLIST_ENTRY 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 vinculada em sequência, consulte Listas Vinculadas Singly e Doubly.
Os chamadores de ExInterlockedFlushSList podem estar em execução em qualquer IRQL. O armazenamento do parâmetro ListHead e as entradas de lista devem ser residentes em todos os IRQLs.
Requisitos
Requisito | Valor |
---|---|
de cliente com suporte mínimo | Disponível a partir do Windows 2000. |
da Plataforma de Destino | Universal |
cabeçalho | wdm.h (include Wdm.h, Ntddk.h, Ntifs.h) |
biblioteca | NtosKrnl.lib |
de DLL | NtosKrnl.exe |
IRQL | Qualquer nível (consulte a seção Comentários) |