【发布时间】:2023-03-27 16:12:01
【问题描述】:
我目前正在尝试了解 Lamport 时间戳。考虑两个进程 P1(产生事件 a1、a2、...)和 P2(产生事件 >b1、b2、...)。让 C(e) 表示与事件 an e 关联的 Lamport 时间戳。我为每个事件创建了时间戳,如Wikipedia article about Lamport timestamps 中所述:
根据 Wikipedia,以下关系适用于所有事件 e1、e2:
如果 e1 在 e2 之前发生,则 C(e1)
让我们看看a1和b2。显然 a1 发生在 b2 之前,并且由于 C(a1) = 1 和 C(b2) = 3,关系成立:C(a1) .
问题:该关系不适用于 b3 和 a3。显然,b3发生在a3之前。但是,C(b3) = 4 和 C(a3) = 3。所以 C(b3) 确实 不 适用。
我误会了什么?非常感谢您的帮助!
【问题讨论】:
标签: messaging distributed clock timing distributed-system