This should work, the default is connect type auto, which mean that it will be direct if both object (source and this in your example) have the same thread affinity. If both have a different thread affinity, the connection will be queued. Note, on queued signal, argument must be copiable and take care of QObject* that must survive and have the proper thread affinity if used. You can verify the QObject thread affinity with the following call: https://doc.qt.io/qt-5/qobject.html#thread
queued connection if source->thread() != this->thread() direct connection if source->thread() == this->thread() You can also enforce the connection type, but normally auto is doing the right thing, unless you moveToThread() after the connection. -----Original Message----- From: Interest <interest-boun...@qt-project.org> On Behalf Of Hamish Moffatt Sent: March 10, 2020 1:27 AM To: interest@qt-project.org Subject: [Interest] Qt5 connect signal to signal In the old syntax one could: connect(source, SIGNAL(readProgress(int)), SIGNAL(progress(int))); In the new syntax, is it equivalent to use connect(source, &SourceClass::readProgress, this, &ThisClass::progress); ... assuming that all of this is on a single thread? I'm not quite clear what thread context the first is using when repeating the signal? Hamish _______________________________________________ Interest mailing list Interest@qt-project.org https://lists.qt-project.org/listinfo/interest _______________________________________________ Interest mailing list Interest@qt-project.org https://lists.qt-project.org/listinfo/interest