据我所知,lamport 时间戳是一种用于确保跨多个站点的事件具有部分排序的工具。
在伪代码中,发送算法是:
time = time + 1; time_stamp = time; send(message, time_stamp);
接收消息的算法是:
(message, time_stamp) = receive(); time = max(time_stamp, time) + 1;
时间戳是否可能是 unix 时间戳,它会根据时间而不是事件自动递增?如果每个站点都使用 unix 时间戳,这是否意味着事件仍然在本地部分排序?我是否必须更改/省略接收消息的算法,还是完全使用 unix 时间戳是错误的?