0

根据矢量时钟的维基百科页面:

If VC(a) < VC(b) then a -> b

    VC - Vecor Clock
    -> - casually related

但是,如果我们有以下架构: 单击此处获取图像

现在我们可以看到带有 VC(1,0,1) 和 VC(0,2,2) 的事件,它们满足了条件:

sqrt(1+0+1) < sqrt(0+4+4) =>  sqrt(2) < sqrt(8)    //TRUE

但是这两个事件(VC(1,0,1) 和 VC(0,2,2))不是随机顺序关系!

有人可以告诉我这里出了什么问题,我错过了什么吗?

4

1 回答 1

0

不知道这里的事件是什么意思!

如果参与者 x 有一个向量时钟 VC(x) = VC(1, 0, 1) 并且参与者 y 有一个向量时钟 VC(y) = VC(0, 2, 2) 那么。- 有一个事件,参与者 x 知道 y 不知道(或依赖于因果关系)。此事件发生在时钟的第一个值从 0 变为 1 时。
- 此外,存在 y 知道而 x 不知道(或依赖于因果关系)的三个事件。这些事件发生在第二个和第三个值在矢量时钟上增加时。所以:

VC(x) 不是 <= VC(y) VC(y) 不是 <= VC(x)

这些时钟没有因果关系,不能直接比较。

于 2019-03-27T20:03:14.327 回答