Función PoStartDeviceBusy (ntifs.h)
La rutina PoStartDeviceBusy marca el inicio de un período de tiempo en el que el dispositivo está ocupado.
void PoStartDeviceBusy(
[in, out] PULONG IdlePointer
);
[in, out] IdlePointer
Puntero a un contador inactivo. Se trata de un valor de puntero devuelto previamente por la rutina PoRegisterDeviceForIdleDetect ion. Dado que PoRegisterDeviceForIdleDetection podría devolver un puntero NULL, el llamador debe comprobar que el puntero no es NULL antes de llamar a PoStartDeviceBusy.
Ninguno
Las rutinas PoStartDeviceBus y y PoEndDeviceBusy marcan el inicio y el final de un período de tiempo en el que un dispositivo está ocupado. Cada llamada a poStartDeviceBusy debe ir seguida de una llamada correspondiente a PoEndDeviceBusy.
Para cada dispositivo, el administrador de energía mantiene un recuento del número de llamadas de PoStartDeviceBus y pendientes para las que aún no ha recibido una llamada PoEndDeviceBusy correspondiente. Una PoStartDeviceBusy llamada incrementa el recuento ocupado en uno. Una PoEndDeviceBusy llamada disminuye el número de ocupados por uno. Un recuento de ocupados distinto de cero deshabilita el contador de inactividad para el dispositivo. Una vez que el recuento de ocupados alcanza cero, el administrador de energía restablece el contador de inactividad al período de tiempo de espera y habilita el contador.
En lugar de usar las rutinas de PoStartDeviceBusy y PoEndDeviceBusy para restablecer el contador inactivo, puede llamar a la rutina de PoSetDeviceBusyEx (o la macro poSetDeviceBusy). Para deshabilitar el contador de inactividad durante un período de actividad prolongado, un controlador puede llamar al PoRegisterDeviceForIdleDetection rutina para deshabilitar y habilitar las notificaciones inactivas al principio y al final del período ocupado. Sin embargo, PoStartDeviceBusy y PoEndDeviceBusy suelen ser más cómodos de usar para este propósito, y debería considerar la posibilidad de usar estas rutinas en código nuevo que escribas para Windows 7 y versiones posteriores de Windows.
Requisito | Valor |
---|---|
cliente mínimo admitido | Windows 7. |
de la plataforma de destino de | Universal |
encabezado de | ntifs.h (include Wdm.h, Ntddk.h, Ntifs.h) |
biblioteca de | NtosKrnl.lib |
DLL de | NtosKrnl.exe |
irQL | Cualquier nivel |