.NET 2.0应用程序('任何CPU')在64位操作系统/处理器上运行缓慢

时间:2009-10-06 14:33:24

标签: performance .net-2.0 64-bit 32-bit

我的Windows应用程序在.NET 2.0 Framework上发布,使用'Any CPU'构建,开发环境是32位操作系统+ Visual Studio 2005

现在我在64位处理器+ 64位操作系统上部署此应用程序,它运行缓慢。

但如果我使用x86(32位)构建,它在64位处理器+ 64位操作系统上没有任何问题,工作正常。

我有第三方组件,如DevExpress,Janus,txtext,ComponentOne Zip等。

为什么运行缓慢?

1 个答案:

答案 0 :(得分:1)

64位并不总是运行得更快 简短的回答是64位应用程序消耗更多内存(如果你有一个64位指针数组,它将大于具有32位指针的相同大小的数组) 更多的内存意味着垃圾收集将更加努力 有关详细信息,请阅读herehere

在任何情况下,您都必须对应用程序进行分析,并查看瓶颈的位置 (也许看GC是一个很好的起点)