开发者社区> 问答> 正文

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

解决粘包我是使用的 

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

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

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


展开
收起
kun坤 2020-06-07 20:31:14 262 0
1 条回答
写回答
取消 提交回答
  • 自己写buffer######说明你还没完全理解PULL模型,带着你的问题继续好好参透 TestEcho-PULL Demo ...######

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

    说明你还没完全理解PULL模型,带着你的问题继续好好参透 TestEcho-PULL Demo ...
    正解 要仔细看pull的demo啊 ######

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

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

    引用来自“Yecate”的评论

    正解 要仔细看pull的demo啊

    仔细阅读了。。。

    但是我这边 GetConnectionExtra 返回1,但是pInfo == nullptr

    ######

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

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

    引用来自“Yecate”的评论

    正解 要仔细看pull的demo啊

    引用来自“jaul”的评论

    仔细阅读了。。。

    但是我这边 GetConnectionExtra 返回1,但是pInfo == nullptr

    那说明你程序逻辑有问题。######我SB了。我回去通读了 DEMO。。解决了######为何之前还说仔细阅读了?!######C# 里面怎么解决  能否看下源代码
    2020-06-07 20:31:18
    赞同 展开评论 打赏
问答地址:
问答排行榜
最热
最新

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载