我们正在将自定义序列化工具滚动到我们的项目中,并且需要通过原始值类型唯一地标识每个对象,该原始值类型可以用作其“身份”的同义词。值的需要没有意义或组织,只是它至少在序列化例程的持续时间内是唯一且持久的。理想情况下,.net将在内部维护一个唯一且持久的对象ID,我们可以将其存储为对象的ID。我知道每个对象都有GetHashCode
方法,但我们对值的全局唯一性没有信心。访问此类ID的另一个标准是该方法需要非常高效。
我看过GetHashCode
,垃圾收集器和编组的想法,还没有达到任何可靠的目的。