removeHeadList 函式 (wdm.h)
RemoveHeadList 例程會從LIST_ENTRY結構的兩次鏈接清單開頭移除專案。
語法
PLIST_ENTRY RemoveHeadList(
[in, out] PLIST_ENTRY ListHead
);
參數
[in, out] ListHead
做為清單標頭之 LIST_ENTRY 結構的指標。
傳回值
RemoveHeadList 會傳回從清單中移除之專案的指標。 如果清單是空的, RemoveHeadList 會傳回 ListHead。
備註
RemoveHeadList 藉由將 ListHead-Flink> 設定為指向清單中的第二個專案,從清單中移除第一個專案。 例程會將第二個專案的 Blink 成員設定為 ListHead。 如果清單是空的,這實際上是無作業。
如需實作雙連結清單時使用此例程的相關信息,請參閱 Singly 和 Doubly Linked 清單。
RemoveHeadList 的呼叫端可以在任何 IRQL 上執行。 如果在 IRQL >= DISPATCH_LEVEL呼叫 RemoveHeadList,則 ListHead 和列表專案的記憶體必須位於內。