中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

ANTS Performance Profiler的示例分析

發布時間:2021-09-16 17:36:56 來源:億速云 閱讀:138 作者:小新 欄目:編程語言

這篇文章主要介紹了ANTS Performance Profiler的示例分析,具有一定借鑒價值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。

ANTS Performance Profiler的基本使用

ANTS Performance Profiler是RedGate旗下強大的性能調優產品,官方產品頁面在這里。

先來看一下軟件的基本使用。

使用下面這段代碼進行簡單的測試。

這是一個控制臺應用程序,程序很簡單,先進行10000次循環,輸出和,再使用LINQ在list里找出1000的值輸出。

1 static void Main() 2 { 3     var list = new List<int>(); 4  5     var sum = 0; 6     for (var i = 0; i < 10000; i++) 7     { 8         sum += i; 9         list.Add(i);10     }11     Console.WriteLine(sum);12 13     //find the value use linq: 100014     var result = list.Where(p => p.Equals(1000));15     foreach (var i in result)16     {17         Console.WriteLine(i);18     }19     Console.ReadKey();20 }

編譯程序后,啟動ANTS Performance Profiler,會自動彈出向導頁面,在此頁面中,可以看到軟件支持多種.NET程序的性能監控,如EXE、web、Windows Service等等。

而在Performace Counters中可以根據需要選擇多種計數器,IO、內存分配、處理器等等。

針對測試DEMO,選擇編譯后的exe文件路徑,因為剛才是debug編譯,所以選擇程序文件夾下\bin\Debug\里面的exe即可。

在Profiling Mode里可以選擇監控的級別,基本就是監控信息的多少與速度的權衡,默認選擇“最詳細”即可。其他的詳細設置可以參考幫助文檔。

點擊“Start Profiling”,啟動程序。

ANTS Performance Profiler的示例分析

分析結果的查看與分析

軟件的基本工作原理是在.NET編譯出的IL代碼里放入鉤子用來記錄時間,然后通過直觀的界面顯示出哪部分代碼耗能最大。所以這是性能調優最直接的方法,針對最耗時的代碼段進行優化即可。

點擊“Start Profiling”后啟動之前編譯的程序,軟件開始執行,如果是其他交互程序如winform、web等,操作完需要進行性能調優的功能后,在頂部的運行時間軸里用鼠標選定需要查看的時間段即可,一般有性能問題的時間段會出現一個波峰,選定那個時間段即可。

ANTS Performance Profiler的示例分析

選定后可以立即在下面的結果窗口中看到最耗時的方法,比如上面的DEMO,當然性能都消耗在了Main函數上。

ANTS Performance Profiler的示例分析

軟件提供了多種度量值查看性能損耗,有百分比和多種時間格式,這里選定“秒”作為度量單位。

ANTS Performance Profiler的示例分析

再選擇要查看的函數,軟件強大之處就顯現出來了。

  • 右側的紅色標線,點擊可以快速定位到最耗能的代碼,顏色越深表示那段代碼越耗能。

  • 左側可以看到行號,此段代碼執行的次數(Hit Count),平均執行時間,總的執行時間,當然還可以同時看到代碼供分析使用。

至于DEMO里這段代碼為什么第一次執行Console.WriteLine如此耗能,我想如果你認真看了《CLR via C#》的第一章就應該能知道答案了。

ANTS Performance Profiler的示例分析

當然你還可以點擊層次結構圖標,查看更加直觀的性能損耗,就像下面這樣。

這樣的層次結構圖還有一個好處就是可以看到.NET Framework的內部實現。

當進行一些決策,比如是用原生的功能還是第三方組件時,這個功能會變得非常好用,因為通過它能比較直觀的地看到內部實現的性能瓶頸在哪里。

ANTS Performance Profiler的示例分析

感謝你能夠認真閱讀完這篇文章,希望小編分享的“ANTS Performance Profiler的示例分析”這篇文章對大家有幫助,同時也希望大家多多支持億速云,關注億速云行業資訊頻道,更多相關知識等著你來學習!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

宁陵县| 苍梧县| 海安县| 亚东县| 博乐市| 瑞安市| 辰溪县| 洛浦县| 祥云县| 资中县| 荣成市| 本溪| 沙雅县| 于田县| 株洲县| 当雄县| 精河县| 南雄市| 牙克石市| 鄂托克旗| 苍山县| 冷水江市| 东至县| 成武县| 虞城县| 湘阴县| 广安市| 碌曲县| 绿春县| 合作市| 泸州市| 淄博市| 象山县| 日土县| 成都市| 萍乡市| 武清区| 香格里拉县| 郧西县| 临西县| 远安县|