Condividi tramite


Attesa in un evento quando il rendering non è necessario

Le app possono attendere in un evento quando il rendering sullo schermo non è necessario , ovvero mentre sono occluse. Quando Desktop Window Manager (DWM) o un'app è occlusa, nessun rendering è necessario e il sistema operativo può rimanere in stati di alimentazione inferiori per periodi di tempo più lunghi. Ciò consente di risparmiare energia e estende la durata della batteria.

Un'app può attendere un evento quando:

  • Tutti i monitor sono disattivati.
  • La sessione in cui viene eseguita l'app viene disconnessa.
  • L'app viene eseguita in modo esclusivo a schermo intero in una singola configurazione di monitoraggio.
  • L'app viene eseguita in un desktop diverso dal desktop attivo e non dispone dell'autorizzazione per il rendering sul desktop attivo.

Il sistema operativo attiva l'evento quando l'app è in grado di eseguire di nuovo il rendering. L'evento non viene cancellato durante un aggiornamento del driver o durante il rilevamento del timeout e la processione di ripristino (TDR), ma viene cancellata quando la nuova scheda e i monitoraggi diventano attivi.

Se si vuole che l'app riceva una notifica sulle modifiche dello stato di occlusione, l'app deve registrarsi per queste modifiche. Un'app può registrarsi per ricevere una notifica sulle modifiche dello stato di occlusione tramite un messaggio a una finestra o tramite segnalazione eventi. Per registrare per ricevere messaggi di notifica a una finestra relativa alle modifiche dello stato dell'occlusione, un'app chiama il metodo IDXGIFactory2::RegisterOcclusionStatusWindow . Per registrare per ricevere la notifica delle modifiche dello stato dell'occlusione tramite segnalazione eventi, un'app chiama il metodo IDXGIFactory2::RegisterOcclusionStatusEvent . Entrambi i metodi restituiscono un puntatore a un valore chiave che l'app può usare per annullare la registrazione della notifica. Per annullare la registrazione della notifica, l'app passa questo valore chiave al metodo IDXGIFactory2::UnregisterOcclusionStatus .

Miglioramenti di DXGI 1.2