为什么切换用户配置文件会提高WinForms的性能?

时间:2011-08-09 14:58:40

标签: c# winforms performance

过去几个月,我们的用户一直抱怨我们的WinForms应用程序的性能。网上有很多关于如何提高WinForms性能的文章,所以我不是在寻找任何明显的建议。

我得到的是Voodoo解决方案似乎有效,我没有任何理由。如果我们只是切换用户,即注销,然后使用之前从未登录过的用户登录到该计算机,然后启动该应用程序,它具有每个人都喜欢的漂亮的快速性能。

麻烦的是,我不知道为什么会有效。我们不向AppData目录写任何东西,我们所有的日志文件都在运行目录中(我意识到这是不好的做法但是我们在XP上运行并且应用程序是在几年前构建的)。我们不是写入注册表,所以也不能写入。

我在网上找到的最好的是关于“清除临时文件”的非常模糊的说法,但我不能真的推荐进程更改因为这个。

2 个答案:

答案 0 :(得分:2)

也许标准用户在机器的背景上运行了一些额外的进程,这些进程会窃取您的性能。 曾经尝试在Windows保护模式下运行应用程序吗?

答案 1 :(得分:2)

您可以使用某些专业应用程序(例如Red Gate Performance Profiler)更多地诊断问题,它不是免费的,但它们有14天的试用期。但是这里有一些常见的\可能的问题:

  • 查看应用程序的虚拟内存,可能会反复增加而不会发现您可以运行任务管理器并转到性能选项卡并观察PF Usage ..,在您的代码中,检查您是否正在创建一些{ {1}}对象或资源,不处理它/关闭它们。
  • 您应该使用更专业的库进行日志记录,例如Log4Net,但是如果您想要记录自己,我建议您切换到使用Disposable并尝试进行日志记录以异步方式。