Hallo noch einmal. ich habe jetzt mal ein minimal Projekt zusammen gestellt. Siehe Attachment.
Ich glaub ich habe irgendwo noch ein Denkfehler. Wäre nett, wenn jemand mal auf den Code schauen könnte. Ich bekomme einfach kein Signal im Worker Thread.
Viele Grüße, Jan
[gelöst] QThread startet QThreads blockweise
- Dateianhänge
-
- ThreadTest.zip
- Minimal Thread Test Sample
- (927 Bytes) 85-mal heruntergeladen
Hallo,
ich habe das Problem gefunden, warum kein Signalaustausch zwischen den Threads stattfand. Es lag tatsächlich an dem connect, das die beiden Threads verbindet.
Sobald ich explizit angebe, das beim Connect "Qt::DirectConnection" verwendet werden soll, funktioniert es.
Mit dem Code unten bekomme ich also brav meine Signale, ohne QT:DirectConnection funktioniert es nicht.
ich habe das Problem gefunden, warum kein Signalaustausch zwischen den Threads stattfand. Es lag tatsächlich an dem connect, das die beiden Threads verbindet.
Sobald ich explizit angebe, das beim Connect "Qt::DirectConnection" verwendet werden soll, funktioniert es.
Mit dem Code unten bekomme ich also brav meine Signale, ohne QT:DirectConnection funktioniert es nicht.
Code: Alles auswählen
connect(&m_calc, SIGNAL(finished()), this, SLOT(wheneverCalcFinished()), Qt::DirectConnection);