网络通信中,加了缓存区才会产生这样的问题
常识,tcp/udp包分为head、data两部分。
缓存区存放的是其中的data数据部分,所以缓存区中没有包的概念了(存放的包中的部分数据报文体?),更无法区分哪些数据原本属于哪个包,所以就产生了粘包的问题。
断包:缓存区的大小 小于 一个tcp/udp包的data部分的大小,所以储存不下,只能储存一部分,这就是断包。
解决方式:设置了服务端、客户端,从各自数据缓存区读取数据的规则。
1、定长消息
2、结束标记
3、自定义协议
网络通信中,加了缓存区才会产生这样的问题
常识,tcp/udp包分为head、data两部分。
缓存区存放的是其中的data数据部分,所以缓存区中没有包的概念了(存放的包中的部分数据报文体?),更无法区分哪些数据原本属于哪个包,所以就产生了粘包的问题。
断包:缓存区的大小 小于 一个tcp/udp包的data部分的大小,所以储存不下,只能储存一部分,这就是断包。
解决方式:设置了服务端、客户端,从各自数据缓存区读取数据的规则。
1、定长消息
2、结束标记
3、自定义协议