C++ 对QTcpSocket的多次写入

C++ 对QTcpSocket的多次写入,c++,qt,network-programming,C++,Qt,Network Programming,我有一个服务器和客户端程序,服务器可以方便地向每个客户端发送两条消息。服务器对每个客户端套接字连续调用write()函数两次。在客户端,会出现readyread信号,但当客户端读取时,它只会获取第一条消息。我通过在服务器每次写入()之前添加WaitForBytesWrite()解决了这个问题,这似乎解决了这个问题。但是,我不知道为什么不能只向缓冲区写入两次。我认为有更好的方法来解决这个问题。您的客户机是否在readyread信号上循环?信号很可能在TCP数据的第一个字节可用时发出。然而,这并不一

我有一个服务器和客户端程序,服务器可以方便地向每个客户端发送两条消息。服务器对每个客户端套接字连续调用write()函数两次。在客户端,会出现readyread信号,但当客户端读取时,它只会获取第一条消息。我通过在服务器每次写入()之前添加WaitForBytesWrite()解决了这个问题,这似乎解决了这个问题。但是,我不知道为什么不能只向缓冲区写入两次。我认为有更好的方法来解决这个问题。

您的客户机是否在readyread信号上循环?信号很可能在TCP数据的第一个字节可用时发出。然而,这并不一定意味着第二条消息已经到达。你说的readyread信号循环是什么意思?如果第一个
readyReadSignal
没有给你所有的字节,那么第二次就会发出。