Domanda

Qt utilizza segnali e slot normalmente in un singolo thread, quindi chiamare un segnale chiamerà uno slot nello stesso segnale di thread chiamato. È un modo per usare un meccanismo di slot di segnale per passare un messaggio al thread qt (quindi lo slot verrà chiamato più avanti nel contesto del thread specificato)?

È stato utile?

Soluzione

Altri suggerimenti

Penso che il modo abituale di gestirlo sia quello di fare in modo che il gestore del segnale accoda qualche altra funzione (usando boost :: bind o qualche cosa di tale funzione) e quindi esegua il threadqueue di destinazione eseguirlo in seguito.

Almeno con Qt4 questo non è affatto un problema. Devi solo impostare la connessione da qualche parte in cui hai delle variabili che puntano ad entrambi i thread. (cioè di solito in main ())

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