记一次socket 接收消息产生的bug

6 篇文章 0 订阅

今天项目产生了bug,解决后发现了bug产生的原因:

由于客户端会进行socket消息的处理,服务端负责消息的发送。所以如果客户端处理消息“慢”,或者服务端发送消息“快”,则会导致客户端接收消息的时候会将那些未处理的正在队列中排队的消息都接收过来连成一条消息,导致信息处理出错。

这个时候就要求我们接收的时候不仅要看消息包头,还要看消息中的消息长度信息。

       下面这个消息就包括两个包头(红色)和两个消息长度的信息(绿色)



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值