gpt4 book ai didi

ios - GCDAsyncSocket 如何识别传入消息的结尾

转载 作者:行者123 更新时间:2023-11-29 02:35:06 27 4
gpt4 key购买 nike

很容易理解,我们可以使用以下方式来识别传入消息的结束,例如:1. 将消息的长度放在数据本身之前2.使用分隔符

然而,GCDAsyncSocket提供了更全面/更智能/通用的解决方案。而且它似乎使用低级的 TCP 协议(protocol)来识别消息的开始和结束。

它是如何制作的?

最佳答案

GCDAsyncSocket 只使用 TCP 流。 TCP 流本身并不定义“消息”,顾名思义,它们只是字节流。

GCDAsyncSocket 添加了一些方便的方法,让你的事情变得更简单

  • readDataToLength:withTimeout:tag: 和相关方法在收到指定数量的字节后自动完成读取 - 这可以与您提到的第一个选项一起使用。
  • readDataToData:withTimeout:tag: 允许您指定终止符序列并在收到时自动完成读取 - 这是您提到的第二个选项。

TCP 本身并没有支持这些功能,GCDAsyncSocket 的作者只是在原始流之上实现了这些解决方案。

关于ios - GCDAsyncSocket 如何识别传入消息的结尾,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26445135/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com