Domanda

Quando mai IVideoWindow :: put_Visible () viene richiamato, esso sbirciare un messaggio dalla coda dei messaggi e inviare esso. Questo totalmente scombina la sequenza di chiamata.

Ho fissato diversi incidenti causati da questa, in un caso per caso polarizzazione. Cioè, per impostare un flag prima di richiamare put_Visible () e quindi pulire la bandiera. E in un evento-gestore, controllare il flag prima, se è impostato, inserisce l'evento torna a coda di messaggi e uscire dal gestore di eventi (cioè rinviare la movimentazione fino put_Visible () restituisce. Il problema è che la mia base di codice è troppo grande e che il metodo non sostenere.

C'è un modo semplicemente cambiare il comportamento di put_Visible () per renderlo non si scherza la coda di messaggi e dispacciamento?

È stato utile?

Soluzione

Alla fine mi viene un'idea, ma non verificate esso. Questo è per invocare put_Visible () in un secondo nuovo thread. Perché Win32 hanno le discussioni separate si sono separati code di messaggi, il put_Visible () sarà improbabile che pasticcio coda di messaggi principale.

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