标题:一个QT网络数据传送问题
作者:hanb99
日期:2006-10-16 16:44
内容:
下面这两个方法在数据传送时有什么区别吗?(用++++++号分开的),请高人指点一下
开始的时候用的是上面的,一切正常,后来我将程序改成多线程的了(thread),上面的客户端就无法接到数据了,只好将代码改成下面的,就OK了,这两种方式有什么不同吗?那个应用更多一些?
服务器:
void Server::sendData(QString data, QTcpSocket &tcpSocket)
{
QDataStream out(tcpSocketClient);
out.setVersion(QDataStream::Qt_4_0);
out > disString;
}
+++++++++++++++++++++++++
好用的:
服务器:
void Server::sendData(QString data, QTcpSocket &tcpSocket)
{
QByteArray block;
QDataStream out(&block, QIODevice::WriteOnly);
out.setVersion(QDataStream::Qt_4_0);
out > blockSize;
}
if (tcpSocket->bytesAvailable() < blockSize)
return;
QString nextFortune;
in >> nextFortune;
}