gpt4 book ai didi

c# - 在 x64 模式下运行时可以生成 x86 哈希值吗?

转载 作者:太空狗 更新时间:2023-10-29 23:03:36 27 4
gpt4 key购买 nike

这周我的代码托管在 x64 进程中时发生了一个错误。我正在使用哈希值进行查找,并将该哈希值存储在数据库中。过去生成的散列值是 x86 散列,现在正在生成 x64 散列,我收到错误,因为查找值不再匹配。

我对此非常怀疑,但我还是想问问。如果我的代码在 x64 进程中运行,有没有办法生成 x86 哈希值?

作为引用,我使用 C# 在 .NET 4.0 上运行。

编辑:

这是我一直遇到的问题:String.GetHashCode() returns different values

您可以通过使用以下代码创建控制台应用程序来重现该问题:

"DDD.Events.Application.ApplicationReferenceCreated".GetHashCode()

在 x86 平台上运行应用程序,然后在 x64 平台上运行它。

我只想跨平台获得一致的值。但是,我可能只创建一个预编译的哈希列表,这样我就可以在需要时进行故障转移。我只是想知道是否有办法从 GetHashCode() 中获取一致的值。我不这么认为,但如果可能的话,这对我来说将是最简单的解决方案。

最佳答案

恐怕如果您使用的是 .NET 中的默认实现,那么这是不可能的。他们甚至不保证它会在不同版本的 .NET 之间返回相同的 ID;并明确声明不得将其用作唯一标识符。 Have a read of this on MSDN

关于c# - 在 x64 模式下运行时可以生成 x86 哈希值吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4472381/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com