none
wpf制作动画,在用到storyboard做出来的简单动画循环,一个循环东环就占用 CPU资源10%左右。 RRS feed

  • 问题

  • 我用blend4建了一个项目是usercontrol,想模拟运输线体做动画(就是在一个线体上有6个托板在运行, <Storyboard x:Key="SD"  RepeatBehavior="Forever">。。。)。然后通过elementhost控件,在form上显示,但是就这么一个简单动画就占用 cpu10%,如果在这个动画里在添加其他动画,cpu 占用就更多了起码在30-40之间,有没有办法解决这个问题呢?

     

     

    • 已移动 Leo Liu - MSFT 2011年6月3日 7:32 Moved for better support. (发件人:Visual C#)
    2011年6月1日 15:08

答案

  • 我和同意Jarrey的观点,CPU的占用率瞬间100%也是比较正常的,系统本身需要加载一些资源和编译等其它逻辑操作,都是需要CPU资源的。我们不能光看着CPU占用率就说动画不好。假如说CPU 为 0% 我反而会认为程序是有问题的,当然这个只是个玩笑话。

    你的动画在执行时 20%的占用已经很低了,在多线程操作下,到达80%也不为过。关心一个程序的健康状况,不是靠CPU一个指标的,我们要综合看。要包括 异常出现情况,内存占用率,页面交换频率,以及网络使用情况。这些数据而且不能光看一时的,要长时间的来衡量。短期峰值出现是很正常的,也许你的系统由其它程序在影响,也许短期系统为了你的程序要实现什么功能,准备资源等,都是会产生峰值。

     

    所以我的主旨是,不要太过于担心这些局部的数据,你要综合考虑。如果担心WPF性能的,你可以用WPF Performance Tool来检测和调试,下面这一些列是官方给出的优化建议,你可以看一下: http://msdn.microsoft.com/zh-cn/library/aa970683.aspx


    Bob Bao [MSFT]
    MSDN Community Support | Feedback to us
    Get or Request Code Sample from Microsoft
    Please remember to mark the replies as answers if they help and unmark them if they provide no help.

    2011年6月6日 3:31
    版主

全部回复

  • 10%?  30-40% 很正常啊, 没什么问题啊. 100%我也觉得事有意义的. 这么不必要担心的 ,反而0%我觉得不正常
    Best day, Best life
    2011年6月3日 6:42
  • 我这个界面里,除了动画,还有播放视频录像机传过来的窗口,后台的数据采集(Modbus) cpu占有率到了80%啦,虽说开了测试很长时间也没有什么事情,但是觉得心里不爽。如果没有动画 cpu估计也就20%

    2011年6月4日 2:26
  • 有没有方法能降低占有率?双缓存?希望有人能解答一下
    2011年6月5日 3:39
  • 我和同意Jarrey的观点,CPU的占用率瞬间100%也是比较正常的,系统本身需要加载一些资源和编译等其它逻辑操作,都是需要CPU资源的。我们不能光看着CPU占用率就说动画不好。假如说CPU 为 0% 我反而会认为程序是有问题的,当然这个只是个玩笑话。

    你的动画在执行时 20%的占用已经很低了,在多线程操作下,到达80%也不为过。关心一个程序的健康状况,不是靠CPU一个指标的,我们要综合看。要包括 异常出现情况,内存占用率,页面交换频率,以及网络使用情况。这些数据而且不能光看一时的,要长时间的来衡量。短期峰值出现是很正常的,也许你的系统由其它程序在影响,也许短期系统为了你的程序要实现什么功能,准备资源等,都是会产生峰值。

     

    所以我的主旨是,不要太过于担心这些局部的数据,你要综合考虑。如果担心WPF性能的,你可以用WPF Performance Tool来检测和调试,下面这一些列是官方给出的优化建议,你可以看一下: http://msdn.microsoft.com/zh-cn/library/aa970683.aspx


    Bob Bao [MSFT]
    MSDN Community Support | Feedback to us
    Get or Request Code Sample from Microsoft
    Please remember to mark the replies as answers if they help and unmark them if they provide no help.

    2011年6月6日 3:31
    版主