gpt4 book ai didi

ios - 多点连接框架 : Stability and Recommendations

转载 作者:技术小花猫 更新时间:2023-10-29 10:18:03 27 4
gpt4 key购买 nike

我正在从事一个使用 MC 框架作为通信 channel 的项目,经过一些测试后,我觉得这个 channel 在某种程度上不稳定,无法依赖。

为了正确使用该框架,我一直在关注 Apple 的文档和视频,但碰巧是这样的:

  • 同伴在配对后经常会断开连接,如果我配对不止一个同伴,情况会更糟。
  • 部分数据包有混合数据

对于使用该框架有什么建议吗?即:

  • 具体的项目设置? (即:功能部分是否有需要启用的内容?)
  • 多线程限制? (即:始终从同一线程调用 mc 方法)
  • 对要发送的数据量有限制吗?

我找到了 this提到框架在压力下表现不佳的链接。这就是我正在寻找的建议 :)。

备案:

  • 我正在使用基于 this 的实现发布自 Apple's project对我不起作用。
  • 我只对我尝试配对的所有对等点使用一个 MCSession
  • 加密首选项设置为 MCEncryptionNone
  • 使用 sendData:sendResourceAtURL: 与同行交流。

最佳答案

我在游戏中使用 MC 框架,并找到了一些解决其明显不稳定性的方法:

1) 我使用每 15 秒发送一次“keep alive”事务来维持链接上的事件。我发现这几乎解决了我遇到的所有连接丢失问题。

2) 我将所有由数据接收触发的处理调度到主线程,并且从不在线程之间携带任何 MCPeer 或 MCSession 对象(初始连接协议(protocol)除外)。我还这样做是为了尽量减少花在数据接收代码上的时间,以便 MC 使用的线程尽快重新获得控制权(我还发现这是一些断开连接的来源)。我不应用此规则发送数据(仅在接收时)

3) 我还没有找到一个干净的解决方案来解决尝试建立连接时出现的重复对等点(使用标准 UI 和我自己的)。到目前为止,比较 MCPeer ID 以避免重复似乎只是删除了一些重复。此外,似乎使用相同的 MCSession 进行广告 (MCAdvertiserAssistant) 并连接到对等点会导致一些冲突,因此我每次启动助手时都使用一个新的、单独的 MCSession 实例。

关于ios - 多点连接框架 : Stability and Recommendations,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34597170/

27 4 0
文章推荐: iOS模拟器无法连接到本地网络IP地址
文章推荐: ios - UIKeyboardWillShowNotification 为快速键盘返回不正确的框架
文章推荐: css - 为什么 内容在某些分辨率下超出包含 BootStrap "span"并重叠?