请问:我已经知道pull模型怎么处理粘包和拆包了,关于半包

发布于 2021-11-30 08:06:37 字数 371 浏览 796 评论 7

解决粘包我是使用的 

typedef  struct SocketHead
{
unsigned char head ; 
unsigned char neck ; 
unsigned short len; 
}*Head;

然后接的内容,但是半包怎么解决?我是先FETCH头的长度出来,再根据len读数据,如果剩余len小于head 我当然下次来读,但是如果刚好有head的数据剩下的数据没来怎么办呢,难道只有设计一个标记下次来读取吗?

fetch出来了又不能压回去,剩下的怎么判断啊,不fetch出来又不能查看到头数据,有没有偷看的函数啊


如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(7

醉酒的小男人 2021-11-30 12:56:12

C# 里面怎么解决  能否看下源代码

柒夜笙歌凉 2021-11-30 12:49:15

为何之前还说仔细阅读了?!

冷清清 2021-11-30 12:45:40

引用来自“伤神小怪兽”的评论

说明你还没完全理解PULL模型,带着你的问题继续好好参透 TestEcho-PULL Demo ...

陌上芳菲 2021-11-30 12:43:35

引用来自“伤神小怪兽”的评论

说明你还没完全理解PULL模型,带着你的问题继续好好参透 TestEcho-PULL Demo ...

梦中楼上月下 2021-11-30 12:42:59

引用来自“伤神小怪兽”的评论

说明你还没完全理解PULL模型,带着你的问题继续好好参透 TestEcho-PULL Demo ...

霞映澄塘 2021-11-30 11:37:10

说明你还没完全理解PULL模型,带着你的问题继续好好参透 TestEcho-PULL Demo ...

平生欢 2021-11-30 11:34:51

自己写buffer

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文