.NET 中的应用程序是否需要以 64 位构建才能充分利用具有 64 位操作系统的机器,或者它是否会像 32 位构建一样利用它。基本上,我们遇到了内存不足异常的问题,建议在 64 位机器上运行控制台应用程序,这“可能”解决了这个问题。问题是我们是否可以直接启动一个 64 位框并将当前应用程序放在上面,或者我是否需要以 64 位方式重建应用程序。
yantwill
问问题
9123 次
3 回答
5
如果它是为任何平台构建的(默认),它将在 64 位操作系统上以 64 位运行。
话虽如此,仍有潜在的问题需要注意。如果您与本机代码交互(通过 p/invoke、C++/CLI 或 COM),则需要将该代码移植到 64 位。如果应用程序是 100% 托管的,它就可以正常工作。
于 2009-07-02T00:36:02.257 回答
1
“任何 CPU”都是您的朋友。
作为旁白:
我们有一个特别大的Trie结构,超过了 32 位 Windows 的 2GB 内存空间。由于大部分结构由对象引用组成,我们发现应用程序的内存需求在迁移到 64 位时几乎翻了一番,大约需要 4GB。这是因为存储引用的内存是 64 位宽而不是 32 位。
于 2009-07-02T00:42:09.437 回答