如何在不使用带有QTCPSocket的flush和waitFOrBytesWritten的情况下立即将数据写入套接字

时间:2016-07-01 06:22:51

标签: c++ qt sockets qtcpsocket

在我的应用程序中,写入套接字时不会立即写入数据。 但是如果我使用flush()或waitForByteWritten(msec),那么它就会被写入。 但是这里flush()和waitforByteWritten()的唯一问题是它创建了一个性能瓶颈。

如果我使用它,那么性能就不那么好了。但如果我没有使用flush()/ waitforBytesWritten(),那么数据本身并不会立即传输。

是否有任何标志或某些内容,以便在将数据写入缓冲区时可以写入数据。

1 个答案:

答案 0 :(得分:0)

你正在阻止事件循环。不要那样做。写入套接字的代码应该在完成后立即返回。