GUID算法如何处理“时钟序列”?

问题描述 投票:-2回答:1

GUID算法生成从3值开始的算法:

  • 您的网卡的MAC地址
  • 当前时间戳,分辨率为100纳秒
  • 称为“时钟序列”的东西:基于GUID的RFC,当向后设置时钟或者如果时间戳没有从上一次GUID生成改变时,该值会递增。

那么,GUID算法如何处理“时钟序列”?它可能是硬件机制吗?它是一个踏步和过程安全的软件程序吗?当计算机具有每100纳秒产生如此多的GUID以重置“代码序列”的计算能力时会发生什么?也许到目前为止,GUID变得过时了......

guid implementation
1个回答
0
投票

任何编写它的人都可以免费实施。对于提供GUID的每个语言/编译器/库,您都不会得到SO的答案。

来自RFC4122

如果时钟序列的先前值已​​知,则可以递增;否则应将其设置为随机或高质量的伪随机值。

所以大多数开发人员只选择后者。

时钟设置后退只是时钟序列的原因。时钟序列没有链接到硬件时钟或类似的东西。

© www.soinside.com 2019 - 2024. All rights reserved.