Funzione InsertHeadList (wdm.h)

La routine InsertHeadList inserisce una voce all'inizio di un elenco doubly collegato di strutture LIST_ENTRY .

Sintassi

void InsertHeadList(
  [in, out] PLIST_ENTRY                  ListHead,
  [in, out] __drv_aliasesMem PLIST_ENTRY Entry
);

Parametri

[in, out] ListHead

Puntatore alla struttura LIST_ENTRY che rappresenta l'intestazione dell'elenco.

[in, out] Entry

Puntatore a una struttura LIST_ENTRY che rappresenta la voce da inserire nell'elenco.

Valore restituito

nessuno

Osservazioni

InsertHeadList aggiorna ListHead-Flink> in modo che punti a Entry. Aggiorna Entry-Flink> in modo che punti alla prima voce precedente nell'elenco e imposta Entry-Blink> su ListHead. Il campo Blink della prima voce originale viene aggiornato anche in modo che punti a Entry.

Per informazioni sull'uso di questa routine durante l'implementazione di un elenco collegato doubly, vedere Singly e Doubly Linked Elenchi.

I chiamanti di InsertHeadList possono essere in esecuzione in qualsiasi IRQL. Se InsertHeadList viene chiamato in IRQL >= DISPATCH_LEVEL, la risorsa di archiviazione per ListHead e le voci di elenco devono essere residenti.

Requisiti

Requisito Valore
Client minimo supportato Disponibile a partire da Windows 2000.
Piattaforma di destinazione Desktop
Intestazione wdm.h (include Wdm.h, Ntddk.h, Ntifs.h, Wudfwdm.h)
IRQL Qualsiasi livello (vedere la sezione Osservazioni)
Regole di conformità DDI IoAllocateFree(wdm), IoReuseIrp(wdm), MarkingQueuedIrps(wdm), RemoveLockCheck(wdm), RemoveLockForward(wdm), RemoveLockForward2(wdm), RemoveLockForwardDeviceControl(wdm), RemoveLockForwardDeviceControl2(wdm), RemoveLockForwardDeviceControlInternal(wdm), RemoveLockForwardDeviceControlInternal2(wdm), RemoveLockForwardRead(wdm), RemoveLockForwardRead2(wdm) , RemoveLockForwardWrite(wdm), RemoveLockForwardWrite2(wdm), RemoveLockRelease2(wdm), RemoveLockReleaseCleanup(wdm), RemoveLockReleaseClose(wdm), RemoveLockReleaseCreate(wdm), RemoveLockReleaseDeviceControl(wdm), RemoveLockReleaseInternalDeviceControl(wdm), RemoveLockReleasePower(wdm), RemoveLockReleaseRead(wdm), RemoveLockReleaseShutdown(wdm), RemoveLockReleaseSystemControl(wdm), RemoveLockReleaseWrite(wdm)

Vedi anche

ExInterlockedInsertHeadList

InitializeListHead

InsertTailList

IsListEmpty

RemoveHeadList

RemoveTailList