【问题标题】:What is the best way to sync two devices heartbeat on iOS?在 iOS 上同步两台设备心跳的最佳方式是什么?
【发布时间】:2014-11-19 14:41:57
【问题描述】:

我正在两个 iOS 客户端上开发一个应用程序。但是两个 iOS 客户端可能都无法连接到 Internet,这使得查询同一个网络时间变得困难。如果我通过无线或 bluebooth 或其他方式将一个时间戳发送到另一个,它可能会有时间延迟,如下所示:

  1. 设备A,从设备A获取时间戳。
  2. 设备A将信息发送给设备B。
  3. 设备 B 标记时间戳。
  4. 设备B从设备A接收时间戳信息。
  5. 设备 B 创建一个新的时间戳,并添加回传输数据之间不同的时间戳。

恐怕创建时间戳和对象创建会使用一些无法记录的时间。并且该应用程序对时间非常关键。有什么方法可以改善吗?谢谢。

【问题讨论】:

  • 为什么应用程序对时间非常关键?如果问题在于分布式事件的排序,也许vector clock 会是更好的解决方案?

标签: ios objective-c cocoa-touch swift


【解决方案1】:

我认为正确的方法是

  1. 设备 A 向设备 B 发送信息(无时间戳)
  2. 设备 B 响应设备 A 的接收时间戳。
  3. 设备 A 收到数据传送的时间戳。

在这种情况下,设备 A 和设备 B 将收到相同的数据共享时间戳。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-07-31
    • 1970-01-01
    • 2013-12-03
    • 2020-09-27
    • 2019-02-01
    • 1970-01-01
    • 2018-02-16
    • 2023-03-20
    相关资源
    最近更新 更多