Domanda

Questa è la mia domanda ... C'è un modo per controllare quando l'applicazione è andato a fullscreen DXGI (DX10 / 11). Per andare a tutto schermo voglio dire che il sistema ha completato il cambio di modalità. Causa ho bisogno per la mia applicazione per evitare situazione di stallo e per regolare i tempi. (Ho un motore multithread e il presente non è sul filo pompa messaggio causando deadlock modalità di cambio a caso)) In realtà lo faccio aspettare 1 secondo di continuare a elaborare i messaggi sul filo pompa messaggio e lavorare, ma voglio qualcosa di più deterministico che mi dice: "hey, il cambio di modalità è completa, vi trovate in modalità a schermo intero". : D

Qualche idea?

È stato utile?

Soluzione

C'è qualche motivo non è possibile eseguire i fili di rendering e pompa messaggio come lo stesso filo?

Secondo la documentazione non c'è niente che ti dice il cambiamento è completo.

Stranamente, però, DXGI si basa su come ottenere le risposte di ritorno da chiamate SendMessage interne (che avvengono tramite la pompa messaggio in un ambiente multi-threaded). Quindi non vedo come ritardare la pompa messaggio risolve i problemi. Tutto quello che farà è rendere DXGI aspettare un secondo in più prima di continuare a fare la sua roba. Un morto-lock di solito implica che si sta facendo qualcosa che provoca la pompa messaggio per bloccare in attesa del thread di rendering di fare qualcosa.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top