Russian Qt Forum

Qt => Работа с сетью => Тема начата: RedDog от Июнь 15, 2012, 16:54



Название: QTcpServer::listen() в отдельном потоке
Отправлено: RedDog от Июнь 15, 2012, 16:54
почему то не срабатывает сигнал о новом подключении, если создаю и вызываю прослушивание QTcpServer в дочернем потоке:

Код
C++ (Qt)
class QMyTcpServer : public QTcpServer
{
....
protected:
   void incomingConnection(int socketDescriptor);
....
};
class MyThread :public QThread
{
.....
public:
    void run();
private:
   QMyTcpServer *serv;
.......
};
 
void MyThread::run()
{
   serv = new QMyTcpServer(this);
   serv->listen(QHostAdress::LocalHost, 9999);
}

QMyTcpServer::incomingConnection(int socketDescriptor) не срабатывает. Почему так?


Название: Re: QTcpServer::listen() в отдельном потоке
Отправлено: mutineer от Июнь 15, 2012, 16:57
У потока нету eventLoop'а. Напиши в конце run  exec();


Название: Re: QTcpServer::listen() в отдельном потоке
Отправлено: RedDog от Июнь 15, 2012, 22:03
Ахтыжекарныйбабай... совсем плохой стал