我正在尝试为Google通讯录开发同步工具,但我看到了一些奇怪的行为。
简而言之,这就是我的问题:
我发送了在X
时间修改联系人的请求
该请求将采用X+1ms.
整个snycing过程需要X+2ms
我会在X+2ms
更新我的时间戳
无论出于何种原因,我修改的联系人显示了X+20ms
的最后修改时间戳,因此在下一次同步期间将其发送回另一个方向。坏。
我使用的Google GData .NET库是同步的,因此它并不像以太网中的呼叫那样完全无法完成。
这是请求/响应/和通话时间的粘贴箱。
有什么想法吗?
答案 0 :(得分:2)
有一个鲜为人知的一阶特殊相对论效应可以限制多个时钟在地球表面的同步程度。两个时钟可以完全相互同步,但是三个或更多个时钟不能更精确地同步(如果我从第3年物理学中正确地回忆起数字)大约4或5毫秒。虽然大多数特殊相对论效应是光速c的二阶或三阶,但这是c中的第一阶,因此可以用现代硬件轻松检测到。
答案 1 :(得分:0)
我注意到响应的标题也提前了20秒,所以它并不特定于修改时间。
咄。