WPF性能調試系列 – 應用程序時間線

WPF性能調試系列文章:

    WPF頁面渲染優化:Application Timeline

    WPF頁面業務加載優化:Ants Performance Profiler  

    WPF內存優化:Ants Memory Profiler

 

應用程序時間線(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工具。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章