次の方法で共有


RemoveTailList 関数 (wdm.h)

RemoveTailList ルーチンは、LIST_ENTRY構造体の二重にリンクされたリストの末尾からエントリ削除します。

構文

PLIST_ENTRY RemoveTailList(
  [in, out] PLIST_ENTRY ListHead
);

パラメーター

[in, out] ListHead

リスト ヘッダーとして機能する LIST_ENTRY 構造体へのポインター。

戻り値

RemoveTailList は、リストの末尾にあったエントリへのポインターを返します。 リストが空の場合、 RemoveTailListListHead を返します

注釈

RemoveTailList は、リスト内の 2 番目から最後のエントリを指すように ListHead-Blink> を設定して、リストから最後のエントリを削除します。 ルーチンは、新しい最初のエントリの Flink メンバーを ListHead に設定します。 リストが空の場合、これは実質的に操作なしです。

二重リンク リストを実装するときにこのルーチンを使用する方法については、「Singly および Do2ly Linked Lists」を参照してください。

InsertHeadList の呼び出し元は、任意の IRQL で実行できます。 IRQL >= DISPATCH_LEVEL で InsertHeadList が呼び出される場合、ListHead のストレージとリスト エントリは常駐している必要があります。

要件

要件
サポートされている最小のクライアント Windows 2000 以降で使用できます。
対象プラットフォーム デスクトップ
Header wdm.h (Wdm.h、Ntddk.h、Ntifs.h、Wudfwdm.h を含む)
IRQL 任意のレベル (「解説」セクションを参照)

こちらもご覧ください

InitializeListHead

IsListEmpty

RemoveEntryList

RemoveHeadList