iOS面试:要点梳理
【摘要】
文章目录
引言
I socket
II 消息推送
III 基础业务知识
引言
底层业务、IM基础知识(socket、粘包问题)、编译流程、中间产物、组件化、...
引言
底层业务、IM基础知识(socket、粘包问题)、编译流程、中间产物、组件化、性能分析(方法运行时间)。
I socket
粘包现象:即发送方发送的若干包数据到接收方接收时粘成一包
不是所有的粘包现象都需要处理,若传输的数据为不带结构的连续流数据(如文件传输),则不必把粘连的包分开(简称分包)。
粘包原因:发送端为了将多个发往接收端的包,更有效的发到对方,使用了优化方法(Nagle算法),将多次间隔较小、数据量小的数据,合并成一个大的数据块,然后进行封包。
- 发送端需要等缓冲区满才发送出去,造成粘包。
2, 接收方不及时接收缓冲区的包,造成多个包接收。
解决该问题的对策:接收方创建一预处理线程,对接收到的数据包进行预处理,将粘连的包分开。
文章来源: kunnan.blog.csdn.net,作者:iOS逆向,版权归原作者所有,如需转载,请联系作者。
原文链接:kunnan.blog.csdn.net/article/details/123708599
【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)