다음을 통해 공유


KeRundownQueue 함수(ntifs.h)

KeRundownQueue 루틴은 큐 개체를 정리하고 대기 중인 항목을 플러시합니다.

통사론

PLIST_ENTRY KeRundownQueue(
  [in, out] PRKQUEUE Queue
);

매개 변수

[in, out] Queue

호출자가 페이지가 없는 풀에 상주 스토리지를 제공하는 초기화된 큐 개체에 대한 포인터입니다.

반환 값

큐가 비어 있으면 KeRundownQueueNULL반환합니다. 그렇지 않으면 큐에 있는 첫 번째 항목의 주소를 반환합니다.

발언

파일 시스템은 큐 개체를 해제하거나 재사용하기 전에 KeRundownQueue 호출하여 큐의 모든 항목을 삭제합니다.

큐 개체를 다시 사용할 경우 호출자는 큐 개체를 다시 사용하려면 큐 개체를 다시 초기화하기 위해 KeRundownQueue호출한 후 KeInitializeQueue 호출해야 합니다.

KeRundownQueue 삭제된 대기 중인 항목 수에 대한 정보를 반환하지 않습니다.

Windows 7부터 KeRundownQueue STATUS_ABANDONED 사용하여 큐 개체에서 현재 대기 중인 스레드를 해제합니다. 이 함수에서 반환한 후 이 큐에서 대기하려는 이후의 스레드는 STATUS_ABANDONED 즉시 실패합니다.

Windows 7 이전에는 큐가 런다운되었을 때 KeRundownQueue 대기 스레드를 깨우지 않았습니다. 이러한 OS 버전에서 스레드가 영원히 대기하지 않도록 하려면 스레드가 큐 개체에서 대기하는 경우 큐에 대해 KeRundownQueue 호출해서는 안 됩니다.

드라이버 관리 내부 큐를 사용하는 방법에 대한 자세한 내용은 Driver-Managed 큐참조하세요.

요구 사항

요구
대상 플랫폼 보편적
헤더 ntifs.h(Ntifs.h 포함)
라이브러리 NtosKrnl.lib
DLL NtosKrnl.exe
IRQL <= DISPATCH_LEVEL

참고 항목

KeInitializeQueue

KeRemoveQueue