Qt:使用readAll()接收的消息之间的区别

时间:2016-09-22 07:55:24

标签: c++ qt tcp qtcpsocket qtcpserver

我在Qt中有一个客户端,它使用 QTcpSocket-> write()方法不断编写数据。

另一方面,我的服务器使用 QTcpSocket-> readyRead()信号,该信号连接到使用 readAll()方法检索信息的插槽

我的问题是,有时服务器正在忙着做其他事情,所以当调用 readAll 时,它会返回一个QString,其中包含多个收到的消息,所有消息都连接在一起。

由于我无法更改消息表单(例如添加显式结束字符),有没有办法将一条消息与另一条消息区分开来?我查看了文档,看看 write 函数是否在流的末尾添加了一个特定的字符但是找不到任何内容。

PS:我将使用服务器处理它只是为了接收消息并将它们放入队列中,这样当消息到达时它很少有机会忙,但它不是一个完美的解决方案!

0 个答案:

没有答案