[quote=引用 3 楼 CGabriel 的回复:] [quote=引用 楼主 snybzi 的回复:] 使用public int Receive(byte[] buffer) 接收数据包,假如现在Socket中有3个100大小的包,而我的buffer 大小是250,那么buffer读取的数据大小,是2个包的200,还是2.5个包的250?
[quote=引用 楼主 snybzi 的回复:] 使用public int Receive(byte[] buffer) 接收数据包,假如现在Socket中有3个100大小的包,而我的buffer 大小是250,那么buffer读取的数据大小,是2个包的200,还是2.5个包的250?
你读取一次, 应该会是250的缓冲区全满了,如果你的Buffer够大,将会有多少数据,读多少数据。
如果来了3个包,你要一起读,就是读250 你可以来1个包就读一次,就不存在粘包拆包的问题了啊
使用public int Receive(byte[] buffer) 接收数据包,假如现在Socket中有3个100大小的包,而我的buffer 大小是250,那么buffer读取的数据大小,是2个包的200,还是2.5个包的250?
110,534
社区成员
642,575
社区内容
加载中
让您成为最强悍的C#开发者
试试用AI创作助手写篇文章吧