使用QTcpSocket时是否需要缓冲区?

时间:2013-11-17 01:58:22

标签: c++ qt

我很好奇是否有必要创建我自己的缓冲区,然后在每个QTcpSocket信号上读取readyRead()的数据。我通常认为这是一个好主意,但我已经在一些不同的网站上看到过(甚至可能是Qt网站,我记不清了),使用缓冲区是完全没必要的,如果只是返回则更好。尚未准备好完整的数据包,并等待下一个readyRead()信号。 QTcpSocket是否负责增长它的内部缓冲区,还是有最大值?我知道它也可能取决于数据包的大小,所以假设最大值约为150kb。

1 个答案:

答案 0 :(得分:1)

QTcpSocket管理内部未绑定缓冲区(请参阅QAbstractSocket::setReadBufferSize)。所以从技术上讲,不需要保留自己独立的缓冲区。