PoStartDeviceBusy 함수(wdm.h)

PoStartDeviceBusy 루틴은 디바이스가 사용 중인 기간의 시작을 표시합니다.

구문

void PoStartDeviceBusy(
  [in, out] PULONG IdlePointer
);

매개 변수

[in, out] IdlePointer

유휴 카운터에 대한 포인터입니다. 이는 이전에 PoRegisterDeviceForIdleDetection 루틴에서 반환된 포인터 값입니다. PoRegisterDeviceForIdleDetectionNULL 포인터를 반환할 수 있으므로 호출자는 PoStartDeviceBusy를 호출하기 전에 포인터가 NULL이 아닌지 확인해야 합니다.

반환 값

없음

설명

PoStartDeviceBusyPoEndDeviceBusy 루틴은 디바이스가 사용 중인 기간의 시작과 끝을 표시합니다. PoStartDeviceBusy에 대한 각 호출 다음에 PoEndDeviceBusy를 호출해야 합니다.

각 디바이스에 대해 전원 관리자는 아직 해당 PoEndDeviceBusy 호출을 받지 못한 미해결 PoStartDeviceBusy 호출 수를 유지 관리합니다. PoStartDeviceBusy 호출은 사용 중인 횟수를 1씩 증가합니다. PoEndDeviceBusy 호출은 사용 중인 수를 1씩 감소합니다. 0이 아닌 사용 중인 개수는 디바이스에 대한 유휴 카운터를 사용하지 않도록 설정합니다. 사용 중인 수가 0에 도달하면 전원 관리자가 유휴 카운터를 제한 시간으로 다시 설정하고 카운터를 사용하도록 설정합니다.

PoStartDeviceBusyPoEndDeviceBusy 루틴을 사용하여 유휴 카운터를 다시 설정하는 대신 PoSetDeviceBusyEx 루틴(또는 PoSetDeviceBusy 매크로)을 호출할 수 있습니다. 사용량이 많은 기간 동안 유휴 카운터를 사용하지 않도록 설정하기 위해 드라이버는 PoRegisterDeviceForIdleDetection 루틴을 호출하여 사용 중인 기간의 시작과 끝에 유휴 알림을 사용하지 않도록 설정하고 사용하도록 설정할 수 있습니다. 그러나 PoStartDeviceBusyPoEndDeviceBusy 는 일반적으로 이 용도로 사용하기에 더 편리하며 Windows 7 이상 버전의 Windows용으로 작성하는 새 코드에서 이러한 루틴을 사용하는 것이 좋습니다.

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows 7부터 사용할 수 있습니다.
대상 플랫폼 유니버설
헤더 wdm.h(Wdm.h, Ntddk.h, Ntifs.h 포함)
라이브러리 NtosKrnl.lib
DLL NtosKrnl.exe
IRQL 모든 수준

추가 정보

PoEndDeviceBusy

PoRegisterDeviceForIdleDetection

PoSetDeviceBusy