it's bad idea to use Qt:: DirectConnection between threads, Qt::QueuedConnection must be used.