По поводу пояснения:
Я, наконец то, нашел решение проблемы, нужно было QTcpSocket для клиентского потока создавать на стороне сервера, а не в клиентском потоке.
Для того что бы решить проблему, которая у меня возникла в классе сервера, наследнике QTcpServer, надо переопределить процедуру
virtual void incomingConnection ( int socketDescriptor )
в которой написать, что то вроде:
void incomingConnection ( int socketDescriptor ){
QTcpSocket *clientSocket = new QTcpSocket(this);
clientSocket->setSocketDescriptor(socketDescriptor);
ClientThread *thread = new ClientThread(clientSocket, this);
...
}
Где ClientThread - класс потока(наследник QThread), в котором обрабатывается каждое клиентское соединение. ClientThread имеет конструктор:
ClientThread::ClientThread(QTcpSocket *socket, QObject = 0){
...
}