.NET中的应用程序是否需要以64位构建才能充分利用具有64位操作系统的计算机,或者它将利用它作为32位构建。基本上,我们遇到内存不足异常的问题,并建议在64位盒子上运行控制台应用程序“可能”解决问题。问题是我们可以只旋转64个框并将当前应用程序抛出或者我需要以64位方式重建应用程序。
答案 0 :(得分:13)
答案 1 :(得分:5)
如果它是为任何平台(默认)构建的,它将在64位操作系统上以64位运行。
话虽如此,仍有潜在的问题值得关注。如果您使用本机代码(通过p / invoke,C ++ / CLI或COM)进行交互,则需要将该代码移植到64位。如果应用程序是100%管理的,它就可以正常工作。
答案 2 :(得分:1)
“任何CPU”都是你的朋友。
暂且不说:
我们有一个特别大的Trie结构,超过了32位Windows的2GB内存空间。由于大多数结构都包含对象引用,我们发现当移动到64位时,应用程序的内存需求几乎翻了一番,需要大约4GB。这是因为存储引用的内存是64位宽而不是32位。