Quote Originally Posted by wysota
"Working" is waiting in event queue until you change
Qt Code:
  1. while(eThread.isRunning())
  2. usleep(100);
To copy to clipboard, switch view to plain text mode 
to something more appropriate (like using a timer's signal connected to a slot or QApplication:rocessEvents), because you are blocking your application in this loop until the thread exists and show() doesn't act immediately but instead posts an event to the event queue.
Frankly speaking, I don't understand the answer completely :-)

At any case I have tried to add to new-thread-initiator few slots (showStatus(), showCritical() and such), and emited appropriate signals inside QThread::run() implementation. It works.

BTW, what is the best place to call connect() for such case? I have done it inside QThread descendant constructor. Last one has QWidget* with mentioned slots as a parameter.