NdisInterlockedPushEntrySList-Makro (ndis.h)
Die NdisInterlockedPushEntrySList-Funktion fügt einen Eintrag am Anfang einer sequenzierten, singly verknüpften Liste ein.
Syntax
void NdisInterlockedPushEntrySList(
SListHead,
SListEntry,
[in] Lock
);
Parameter
SListHead
Ein Zeiger auf den Kopf der bereits initialisierten sequenzierten, singlich verknüpften Liste, in die der angegebene Eintrag eingefügt werden soll.
SListEntry
Ein Zeiger auf den einzufügenden Eintrag.
[in] Lock
Ein Zeiger auf eine vom Aufrufer bereitgestellte Spinsperre, die derzeit nicht vom Aufrufer gehalten wird.
Rückgabewert
Keine
Bemerkungen
Bevor der Treiber die Funktion NdisInterlockedPushEntrySList erstmalig aufruft , muss er den Listenkopf mit dem initialisieren. NdisInitializeSListHead-Funktion .
Ein Treiber darf die angegebene Sperre nicht halten, wenn er NdisInterlockedPushEntrySList aufruft. Bei Bedarf muss ein Treiber die NdisReleaseSpinLock-Funktion aufrufen, bevor er NdisInterlockedPushEntrySList aufruft. NdisInterlockedPushEntrySList muss diese Sperre selbst abrufen, bevor ListEntry am Anfang der Liste eingefügt wird, um sicherzustellen, dass dieser Vorgang auf eine multiprozessorsichere Weise behandelt wird.
Der Aufrufer muss residenten Speicher für die Sperre bereitstellen, die mit der NdisAllocateSpinLock-Funktion initialisiert werden muss, bevor der erste Aufruf von NdisInterlocked.. SList-Routine .
Treiber, die E/A-Vorgänge wiederholen, sollten eine doppelt verknüpfte ineinandergreifende Warteschlange und die NdisInterlockedInsert/Remove verwenden. Listenfunktionen anstelle einer S-Liste.
Wenn NdisInterlockedPushEntrySList unter IRQL >= DISPATCH_LEVEL aufgerufen wird, muss der Speicher für den ListHead-Parameter und die Listeneinträge resident sein.
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Unterstützt für NDIS 6.0- und NDIS 5.1-Treiber (siehe NdisInterlockedPushEntrySList (NDIS 5.1)) in Windows Vista. Unterstützt für NDIS 5.1-Treiber (siehe NdisInterlockedPushEntrySList (NDIS 5.1)) in Windows XP. |
Zielplattform | Desktop |
Kopfzeile | ndis.h (einschließlich Ndis.h) |
IRQL | Beliebige Ebene |
Weitere Informationen
Feedback
https://aka.ms/ContentUserFeedback.
Bald verfügbar: Im Laufe des Jahres 2024 werden wir GitHub-Issues stufenweise als Feedbackmechanismus für Inhalte abbauen und durch ein neues Feedbacksystem ersetzen. Weitere Informationen finden Sie unterFeedback senden und anzeigen für