请问:我已经知道pull模型怎么处理粘包和拆包了,关于半包
解决粘包我是使用的
typedef struct SocketHead
{
unsigned char head ;
unsigned char neck ;
unsigned short len;
}*Head;
然后接的内容,但是半包怎么解决?我是先FETCH头的长度出来,再根据len读数据,如果剩余len小于head 我当然下次来读,但是如果刚好有head的数据剩下的数据没来怎么办呢,难道只有设计一个标记下次来读取吗?
fetch出来了又不能压回去,剩下的怎么判断啊,不fetch出来又不能查看到头数据,有没有偷看的函数啊
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(7)
C# 里面怎么解决 能否看下源代码
为何之前还说仔细阅读了?!
引用来自“伤神小怪兽”的评论
说明你还没完全理解PULL模型,带着你的问题继续好好参透 TestEcho-PULL Demo ...
引用来自“伤神小怪兽”的评论
说明你还没完全理解PULL模型,带着你的问题继续好好参透 TestEcho-PULL Demo ...
引用来自“伤神小怪兽”的评论
说明你还没完全理解PULL模型,带着你的问题继续好好参透 TestEcho-PULL Demo ...
说明你还没完全理解PULL模型,带着你的问题继续好好参透 TestEcho-PULL Demo ...
自己写buffer