关于qtcpsocket连续读写,qthread continue write read
2009-10-17 12:36
591 查看
【转帖请注明出处:blog.csdn.net/lanmanck】
用qtcpserver和qtcpsocket建立连接后,一般需要循环读写很多数据。而qt自带的例子只有1次而已。
下面是我发现的一些技巧。
在读或者写过程中,QDataStream一定要每次都用“新的定义”,如下:
while(1)
{
QDataStream out(&block,QIODevice::WriteOnly);
out<<mystring;
socket.write(block);
}
而如下是不正确的,只有一次成功:
QDataStream out(&block,QIODevice::WriteOnly);
while(1)
{
out<<mystring;
socket.write(block);
}
读操作一个道理。大家注意点。错了请指正。
完整的例子在example有,不过c++programing in qt4那本书讲的更好。
用qtcpserver和qtcpsocket建立连接后,一般需要循环读写很多数据。而qt自带的例子只有1次而已。
下面是我发现的一些技巧。
在读或者写过程中,QDataStream一定要每次都用“新的定义”,如下:
while(1)
{
QDataStream out(&block,QIODevice::WriteOnly);
out<<mystring;
socket.write(block);
}
而如下是不正确的,只有一次成功:
QDataStream out(&block,QIODevice::WriteOnly);
while(1)
{
out<<mystring;
socket.write(block);
}
读操作一个道理。大家注意点。错了请指正。
完整的例子在example有,不过c++programing in qt4那本书讲的更好。
相关文章推荐
- qtcpsocket调用write和read函数写数据乱码问题解决方法
- QTcpSocket read write buffer
- QTcpSocket read write buffer
- 【问题笔记】关于c++文件读写 read write gcount的尝试
- 关于socket阻塞与非阻塞情况下的recv、send、read、write返回值
- 关于使用QTcpSocket的一些总结
- 关于使用QTcpSocket的一些总结
- UNIX网络编程——关于socket阻塞与非阻塞情况下的recv、send、read、write返回值
- 关于socket阻塞与非阻塞情况下的recv、seng、read、write返回值问题
- 关于socket阻塞与非阻塞情况下的recv、send、read、write返回值
- 5.关于QT中的网络编程,QTcpSocket,QUdpSocket
- 关于socket阻塞与非阻塞情况下的recv、send、read、write返回值
- 关于socket阻塞与非阻塞情况下的recv、send、read、write返回值
- 关于socket阻塞与非阻塞情况下的recv、send、read、write返回值
- 关于socket阻塞与非阻塞情况下的recv、send、read、write返回值
- 关于socket阻塞与非阻塞情况下的recv、send、read、write返回值
- QTcpSocket如何阻塞readyRead()信号
- 关于socket阻塞与非阻塞情况下的recv、send、read、write返回值
- 关于socket阻塞与非阻塞情况下的recv、send、read、write返回值
- 关于socket的read和write