QObject cross-thread timer failure: queued versus direct signal delivery under concurrent workers
Qt documents that a QObject has thread affinity: timers and sockets must be created, started and stopped in their owning thread, and use from another thread is a documented failure condition, not a portable guarantee. Cross-thread signals follow a related rule: with Qt::AutoConnection , delivery becomes queued, so the slot runs later in the receiver thread's