ExInterlockedFlushSList-Funktion (wdm.h)
Die ExInterlockedFlushSList-Routine entfernt alle Einträge atomar aus einer sequenzierten singly verknüpften Liste.
Syntax
NTKERNELAPI
PSLIST_ENTRY
FASTCALL
ExInterlockedFlushSList (
_Inout_ PSLIST_HEADER ListHead
);
Parameter
[in, out] ListHead
Ein Zeiger auf die SLIST_HEADER-Struktur , die als Header für die sequenzierte, singly verknüpfte Liste dient.
Rückgabewert
Wenn Einträge in der angegebenen Liste vorhanden sind, gibt ExInterlockedFlushSList einen Zeiger auf die erste SLIST_ENTRY Struktur zurück, die ein Eintrag in der Liste war. Andernfalls wird NULL zurückgegeben.
Hinweise
ExInterlockedFlushSList löscht nicht die SLIST_ENTRY Strukturen, aus denen die Liste besteht. Sie legt nur den internen Zeiger von ListHead auf den Anfang der Liste auf NULL fest. Der Treiber muss die Einträge explizit freigeben.
Die Routine gibt einen Zeiger auf die erste SLIST_ENTRY Struktur zurück, die sich in der Liste befand. Der Treiber kann diesen Zeiger verwenden, um die Einträge zu durchlaufen.
Weitere Informationen zur Verwendung dieser Routine zum Implementieren einer sequenzierten, singly verknüpften Liste finden Sie unter Singly und Doubly Linked Listen.
Aufrufer von ExInterlockedFlushSList können in jedem IRQL ausgeführt werden. Der Speicher für den ListHead-Parameter und die Listeneinträge muss in allen IRQLs vorhanden sein.
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Verfügbar ab Windows 2000. |
Zielplattform | Universell |
Header | wdm.h (einschließlich Wdm.h, Ntddk.h, Ntifs.h) |
Bibliothek | NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | Beliebige Ebene (siehe Abschnitt Hinweise) |