Ok you mean to say just after initialization of members, I can emit a signal and in the handler I can connect to the servers?
Well yes, which at the end is exatcly what should have been connecting to the QThread::started() signal.

Also I don't want anything to do on thread exit, so do not need finished signal.
From the code you posted it does seem that way though since you have no other code in your run().

To be frank, for me at least you posted to little information and too little code to know where or even what the problem is.
You have to remember, that what yo are talking about in terms of what you see as behavior, is not the problem, but the symptom.
To understand the problem, more code is needed, especially when we talk about a threaded setup.