我在 Qt 中有一个客户端,它使用QTcpSocket->write()方法连续写入数据。
另一方面,我的服务器使用QTcpSocket->readyRead()信号,该信号连接到使用readAll()方法检索信息的插槽。
我的问题是,有时服务器正忙于做其他事情,所以当调用 readAll时,它返回一个包含多个接收到的消息的 QString,所有消息都连接在一起。
由于我无法更改消息形式(例如添加明确的结束字符),有没有办法区分一条消息和另一条消息?我查看了文档以查看可能write函数是否在流的末尾添加了特定字符但找不到任何内容。
PS:我将使用服务器处理它仅用于接收消息并将它们放入队列中,因此消息到达时它很忙的可能性较小,但这不是一个完美的解决方案!