WPF:关于Animation的CPU消耗

当前开发的项目中,CPU消耗一直维持在20-30%,再加上内存泄露这事儿,真是很头疼的事。项目组内的同事都为这事忙活着。

项目中的主要展示界面是用WPF完成的,有涉及到动画,主要是有几个滚动条,来标记这几个模块正在进行。刚开始,用了GIF来简单的显示,用的也挺好的。之后在内存泄露这事件中,被做排查工作的同事揪了出来:一直在耗内存啊!然后,用了WPF的Animation模仿了GIF的效果。显示效果之类的都没有问题,但CPU的使用高达30%!!!很吃惊,为什么简简单单的滚动条动画这么吃CPU呢。

好在,我这人很固执。开始一边度娘一边谷哥。发现了这么一篇简短的文章:“WPF: Reducing CPU consumption for animations”.文章中提到:WPF的Animation默认使用60帧一秒,相当的高啊,这就是吃CPU的原因了。

简单的代码实现为:(一般放在应用程序的开始函数中)

Timeline.DesiredFrameRateProperty.OverrideMetadata(
            typeof(Timeline),
            new FrameworkPropertyMetadata { DefaultValue = 20 }
            );

转载于:https://www.cnblogs.com/lnetmor/archive/2012/06/13/2548448.html

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值