It means that you don't get the disconnected() signal. If you would, then the quit slot for the thread will get called, causing exec() to exit.
The default delay for waitForDisconnected is 30 seconds.
Try giving it a smaller delay, like 5 seconds ( pass 5000 to waitForDisconnected ).
If you still don't get the disconnected signal, then it means that there is still data pending to be read. But giving it an explicit timeout, it should force a disconnected() signal.
Regards
Bookmarks