insertHeadList 函数 (wdm.h)
InsertHeadList 例程在LIST_ENTRY结构的双重链接列表的开头插入一个条目。
语法
void InsertHeadList(
[in, out] PLIST_ENTRY ListHead,
[in, out] __drv_aliasesMem PLIST_ENTRY Entry
);
参数
[in, out] ListHead
指向 LIST_ENTRY 结构的指针,该结构表示列表的标题。
[in, out] Entry
指向 LIST_ENTRY 结构的指针,该结构表示要插入列表中的条目。
返回值
无
备注
InsertHeadList 更新 ListHead-Flink> 以指向 Entry。 它会更新 Entry-Flink> 以指向列表中的旧第一个条目,并将 Entry-Blink> 设置为 ListHead。 原始第一个条目的 Blink 字段也会更新为指向 Entry。
有关在实现双重链接列表时使用此例程的信息,请参阅 Singly 和 Doubly Linked Lists。
InsertHeadList 的调用方可以在任何 IRQL 上运行。 如果在 IRQL >= DISPATCH_LEVEL 调用 InsertHeadList,则 ListHead 和列表条目的存储必须是常驻的。