ServerThread
::ServerThread(int handle,
QObject* parent
){
m_descriptor = handle;
init();
}
void ServerThread::run()
{
if(!m_socket->setSocketDescriptor(m_descriptor))
{
qDebug("Socket Error!");
exit(-1);
}
connect(m_socket, SIGNAL(readyRead()), this, SLOT(ready()),Qt::DirectConnection);
m_socket->waitForReadyRead(10000);
}
void ServerThread::ready()
{
disconnect(m_socket, SIGNAL(readyRead()));
//Check incoming command
if(m_socket->canReadLine())
{
switch(map.value(tokens[0]))
{
case GETA:
doSomeThing();
break;
case GETB:
doSomeThing();
break;
case QUIT:
m_socket->disconnectFromHost();
break;
default:
m_socket->disconnectFromHost();
return;
}
}
}