Condividi tramite


Chiamare ExSetTimerResolution durante l'elaborazione di un IRP di alimentazione

Durante l'elaborazione di una richiesta di IRP_MJ_POWER, il gestore di alimentazione mantiene un blocco su una risorsa che ExSetTimerResolution deve acquisire per completare. Di conseguenza, si verificherà un deadlock se un driver chiama direttamente o indirettamente questa routine durante l'elaborazione di una richiesta di alimentazione e quindi attende che la chiamata alla routine venga restituita prima che il driver completi la richiesta di alimentazione. Durante l'elaborazione di una richiesta di alimentazione, un driver può chiamare in modo sicuro ExSetTimerResolution solo se il driver non attende che la chiamata a questa routine venga restituita prima di completare la richiesta di alimentazione. Ad esempio, un driver può creare un thread di lavoro che chiama ExSetTimerResolution, purché il driver completi la richiesta di alimentazione senza attendere che venga restituita la chiamata a questa routine.