void NewServerDialog::on_okButton_clicked()
{

    emit signalConnectToServer(
                ui->serverAdressEdit->text().toStdString(),
                ui->serverPortEdit->text().toStdString()
                );

    close();
}
void CDistributeTaskWorker::slotDisconnected()
{
	MYLOG4CPP_DEBUG<<" "
		<<" "<<"class:"<<" "<<"CStockTcpClientActor"
		<<" "<<"slot:"<<" "<<"slotDisconnected";
	//TODO.
	this->msleep(1000*10);

	MYLOG4CPP_DEBUG<<" "
		<<" "<<"class:"<<" "<<"CStockTcpClientActor"
		<<" "<<"fun:"<<" "<<"slotDisconnected"
		<<" "<<"emit signalConnectToServer()";

	emit signalConnectToServer();
}
void CDistributeTaskWorker::run()
{
	MYLOG4CPP_DEBUG<<"CStockTcpClientActor::run()";

	m_pComWorker = new CClientComWorker(m_strServerIP, m_nServerPort, this);
	QObject::connect(m_pComWorker, SIGNAL(signalDisconnected()), this, SLOT(slotDisconnected()), Qt::AutoConnection);
	QObject::connect(m_pComWorker, SIGNAL(signalConnected()), this, SLOT(slotConnected()), Qt::AutoConnection);
	QObject::connect(this, SIGNAL(signalConnectToServer()), m_pComWorker, SLOT(slotConnectToServer()), Qt::AutoConnection);

	//
	m_pMessageManager = new CMessageManager(this);
	QObject::connect(m_pComWorker, SIGNAL(signalProcessMessage(QByteArray*)), m_pMessageManager, SLOT(slotProcessMessage(QByteArray*)), Qt::AutoConnection);
	QObject::connect(m_pMessageManager, SIGNAL(signalWriteMessage(QByteArray*)), m_pComWorker, SLOT(slotWriteMessage(QByteArray*)), Qt::AutoConnection);

	m_pComWorker->start();

	m_WorkerState = WORK_STATE_BEGIN;
	m_WorkerState = WORK_STATE_WORKING;

	//QThread::exec() waits until QThread::exit() called
	exec();


	if (NULL != m_pComWorker)
	{
		m_pComWorker->terminateAndWait();
		delete m_pComWorker;
		m_pComWorker = NULL;
	}

	if (NULL != m_pMessageManager)
	{
		delete m_pMessageManager;
		m_pMessageManager = NULL;
	}

	m_WorkerState = WORK_STATE_END;

}