我对两个程序之间的异步 TCP 套接字消息进行了一些试验,用于传递数据、数字和/或文本。我所做的是在每条消息的开头使用关键字,然后用“|”分隔值特点。所以消息可能看起来像这样:
“数据|490|40517.9328222222|1|6|11345|11347|11344|11345|106|40517.8494212963”
我将读取缓冲区大小设置为 1024,因为大多数消息都在该长度内。不过有时候我可能会快速发很多短信,几条加在一起不到1024个字符,然后好像一下子就看完了。如果我发送的消息超过 1024 个字符,它将被拆分。所以我正在寻找有关如何处理此问题的建议。我应该使用一些特殊字符来开始和/或结束每条消息吗?将不胜感激有关如何执行此操作的一些提示..
最佳答案
最简单的方法是在每条消息的开头发送消息长度,并以适用于小端和大端硬件的方式进行序列化。
这也可以帮助您的接收器有效地预分配其接收缓冲区。
关于vb.net - 如何分离 TCP 套接字消息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4361390/