다음을 통해 공유


RemoveTailList 함수(wdm.h)

RemoveTailList 루틴은 두 배로 연결된 LIST_ENTRY 구조 목록의 끝에서 항목을 제거합니다.

구문

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

매개 변수

[in, out] ListHead

목록 헤더 역할을 하는 LIST_ENTRY 구조체에 대한 포인터입니다.

반환 값

RemoveTailList 는 목록의 꼬리에 있던 항목에 대한 포인터를 반환합니다. 목록이 비어 있으면 RemoveTailListListHead를 반환합니다.

설명

RemoveTailList는 목록의 두 번째에서 마지막 항목을 가리키도록 ListHead-Blink>를 설정하여 목록에서 마지막 항목을 제거합니다. 루틴은 새 첫 번째 항목의 Flink 멤버를 ListHead로 설정합니다. 목록이 비어 있는 경우 사실상 no-op입니다.

이중으로 연결된 목록을 구현할 때 이 루틴을 사용하는 방법에 대한 자세한 내용은 Singly 및 두 배로 연결된 Lists.

InsertHeadList의 호출자는 모든 IRQL에서 실행할 수 있습니다. IRQL >= DISPATCH_LEVEL InsertHeadList가 호출되면 ListHead 및 목록 항목에 대한 스토리지가 상주해야 합니다.

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows 2000부터 사용할 수 있습니다.
대상 플랫폼 데스크톱
머리글 wdm.h(Wdm.h, Ntddk.h, Ntifs.h, Wudfwdm.h 포함)
IRQL 모든 수준(설명 섹션 참조)

추가 정보

InitializeListHead

IsListEmpty

RemoveEntryList

RemoveHeadList