[gelöst] QThread startet QThreads blockweise

Alles rund um die Programmierung mit Qt
wobaa666
Beiträge: 9
Registriert: 1. Februar 2008 19:20

Beitrag von wobaa666 »

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
Dateianhänge
ThreadTest.zip
Minimal Thread Test Sample
(927 Bytes) 85-mal heruntergeladen
wobaa666
Beiträge: 9
Registriert: 1. Februar 2008 19:20

Beitrag von wobaa666 »

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.

Code: Alles auswählen

connect(&m_calc, SIGNAL(finished()), this, SLOT(wheneverCalcFinished()), Qt::DirectConnection);
Antworten