【问题标题】:WPF Application takes too much CPU for some usersWPF 应用程序为某些用户占用过多的 CPU
【发布时间】:2012-07-20 07:55:48
【问题描述】:

我有一个用 VS2010 Express 为 .Net 4 编写的 WPF 应用程序。一些测试人员报告说,只要应用程序窗口可见,应用程序就会占用大量 CPU (~80%-100%),不可见时占用 0%。在我的电脑上不是这样,在我测试过的其他电脑上也不是这样。我看到的是,在打开窗口后的前几秒钟,它会占用大量 CPU,但随后会下降到百分之几。

我怀疑这是 WPF 窗口呈现的问题。但我不明白为什么它只发生在某些用户身上。

我知道这没什么好做的,但是如果有人知道从哪里开始寻找导致此性能问题的原因,我们将不胜感激。

谢谢!

【问题讨论】:

  • 你有大量的视觉定制吗?故障计算机的操作系统是什么?在故障计算机上,是否集成了 GPU?
  • 75 to 100% of CPU Usage in WPF? 的可能重复项
  • 我唯一的“重”定制(我猜)是一些透明度。我在一台 XP 和一台 Vista 机器上遇到问题。我知道如果你有一个集成的 GPU,你会得到很高的 CPU,但它不会在一段时间后,当它渲染窗口时下降。 WPF 不会在每一帧上重新渲染整个窗口,对吧?

标签: wpf performance


【解决方案1】:

使用WPF Performance Toolkit可以比较详细的观察你应用的渲染过程。 Perforator(工具包的)在过去帮助我找到了性能瓶颈。

【讨论】:

    【解决方案2】:

    这个问题让我找到了正确的解决方案:

    https://stackoverflow.com/questions/308816/any-good-free-net-profiler

    我分析了应用程序并消除了分析器检测到的瓶颈。这减少了所有机器上的 CPU 负载。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-11-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-09-08
      相关资源
      最近更新 更多