Socket传输数据太频繁并且数据量级比较大,就很容易出现分包(一个包的内容分成了两份)、粘包(前一个包的内容分成了两份,其中一份连着下一个包的内容)的情况。
粘包的处理方式有很多种,常见的三种是:
1、增加包头和包尾,确定这一包的实际长度。
2、使用固定分隔符对每包进行分割。
3、发送方和接收方规定固定大小的缓冲区,也就是发送和接收都使用固定大小的 byte[] 数组长度,当字符长度不够时使用空字符弥补。(字符长度不够增加空字符使得传输数据增长)
Socket传输数据太频繁并且数据量级比较大,就很容易出现分包(一个包的内容分成了两份)、粘包(前一个包的内容分成了两份,其中一份连着下一个包的内容)的情况。
粘包的处理方式有很多种,常见的三种是:
1、增加包头和包尾,确定这一包的实际长度。
2、使用固定分隔符对每包进行分割。
3、发送方和接收方规定固定大小的缓冲区,也就是发送和接收都使用固定大小的 byte[] 数组长度,当字符长度不够时使用空字符弥补。(字符长度不够增加空字符使得传输数据增长)