码迷,mamicode.com
首页 > Windows程序 > 详细

WPF性能调试系列 – 应用程序时间线

时间:2016-11-24 14:02:20      阅读:363      评论:0      收藏:0      [点我收藏+]

标签:复杂   数据   选择   不同的   业务需求   访问   业务逻辑   ima   举例   

应用程序时间线(Application Timeline)

    应用程序时间线工具是VS2015新添加的功能,通过对WPF程序的检测,可以分析应用程序消耗的时间包含用户界面框架、服务网络和磁盘请求、程序启动及页面加载。此处重点介绍程序加载和页面加载的时间性能分析。

 

模拟分析应用程序

打开VS2015,通过菜单分析(N)-> 性能探测器(F打开分析器,在可用工具中选择应用程序时间线

 技术分享

注: 1.  不同版本的VS菜单名称可能不相同,上图为VS2015企业简体中文版,根据路径选择具体菜单

    2.  分析目标为WPF应用程序可以选择‘应用程序时间线’,不要在包含其他类型的应用程序的项目中打开,会造成此项不可选

 

开始执行后,wpf应用会打开执行,当需要检测的页面加载完成后可以关闭wpf应用,等待VS自行分析结束后,会输出分析结果。

 技术分享

磁盘和网络活动:频繁的磁盘访问和网络负载在UI线程可能会严重影响应用程序的响应。即使其中的一些I / O访问发生在一个不同的线程上,它仍然可能会影响应用程序的感知响应。这些事件将详细的总的有效载荷和时间花费在服务的I / O请求。

 

  XAML文件加载的分析时间包含:布局,解析和呈现部分的分析

 技术分享

布局:比较大型应用中可能会有巨大数量的元素同一时间在页面上显示,这就导致了应用程序页面的低响应速度。布局详细的标明每个元素的加载成本。通过找到具体某个低响应速度的控件进行优化。

解析:这一事件能够识别由UI线程在解析XAML文件和创建对象的时间。这能够在性能瓶颈的情况下识别不必要的文件解析和对象创建,并优化它们。

呈现:具体页面控件呈现在显示器所需要的时间,此部分一般无需做为优化所需要考虑的范畴。

 

举例查找页面加载的性能瓶颈:

 技术分享

通过页面加载的时间线,发现一个自定义控件的解析时间需要356.85秒,远远超过了其他页面的加载时间,现在需要直接进入自定义控件进行页面复杂度分析

 技术分享

查看页面察觉到使用到了页面比较耗性能的Chart图表控件,这种情况就可分析真实业务需求,是否可以通过其他控件代替?或和用户做对应的技术讲解?等等。

 

 

上面是VS2015中应用程序时间线的使用方法,主要用于检测UI层性能瓶颈。关于数据访问层和业务逻辑层的瓶颈可使用大名鼎鼎的ANTS Performance profiler工具。

WPF性能调试系列 – 应用程序时间线

标签:复杂   数据   选择   不同的   业务需求   访问   业务逻辑   ima   举例   

原文地址:http://www.cnblogs.com/jingridong/p/6097240.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!