接收未知邮件大小的tcp请求

时间:2016-10-11 15:06:18

标签: c# tcp

我设置了一个tcp监听器,其中有一个未知的消息大小。我不确定在处理未知消息大小时最佳做法是什么。这是代码:

"o''clock"

所以你会注意到我可以将数组字节的大小从256更改为更大的但是我不知道是否有更好的方法,而不仅仅是将大小设置为我知道足够大的东西。如果消息小于256,则可以正常工作。

感谢您提前提供任何帮助

1 个答案:

答案 0 :(得分:1)

如果消息长度不是永久性的,那么向您发送消息的服务应该在每个消息的开头发送几个字节(通常为4,因为Int32是32位,即4个字节),这将指示消息长度。登记/>
当您收到消息时,您应首先读取这4个字节,然后在解析它们之后,您将知道消息长度,并且您可以创建适当大小的字节数组。

现在,您可以读取此数组中的消息本身。