【发布时间】:2014-08-23 07:35:31
【问题描述】:
当QTcpSocket::close() 被调用时会发生什么?
我知道它最终会关闭连接,但是 Tcp 套接字的内部缓冲区会发生什么?清除了吗?
这就是我调用close()时QTcpSocket::size()返回0的原因吗?
从服务器接收数据后从客户端:
qDebug() << tcpSocket.size(); //170
tcpSocket.close();
qDebug () << tcpSocket.size(); //0
编辑: 根据这个post,关闭一个套接字会自动刷新所有剩余的数据。由于我在客户端从服务器接收到数据后关闭了套接字,所以数据会刷新到哪里?我还没有读取任何数据。
【问题讨论】: