2010-07-14 2 views
0

Mon code est un plugin d'un logiciel hôte qui obtient un temps de traitement limité. Par conséquent, je crée un deuxième thread (via l'API système) et démarre QApplication à cet endroit. De cette façon, l'interface graphique fonctionne correctement.Création d'une boucle d'événement QThread dans un thread existant non QT

Maintenant, je voudrais lancer une boucle d'événement QThread dans l'original de telle sorte que je puisse utiliser Signal/Slot (Qt :: QueuedConnection) pour invoquer des fonctions qui ne sont pas thread-safe dans le logiciel hôte.

Y at-il un moyen de créer une telle boucle d'événement QThread sans créer un nouveau thread?

Merci!

Répondre

1

Je ne suis pas sûr de savoir si je vous ai bien compris, mais vous pouvez démarrer votre propre boucle d'événements en appelant simplement QEventLoop :: exec() par exemple. membre de la classe privée.

N'oubliez pas d'appeler QEventLoop.exit().

Au revoir, Lars

Questions connexes