日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > asp.net >内容正文

asp.net

[翻译]编写高性能 .NET 代码 第一章:工具介绍 -- Visual Studio

發布時間:2023/12/4 asp.net 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 [翻译]编写高性能 .NET 代码 第一章:工具介绍 -- Visual Studio 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Visual Studio

vs雖然不是全宇宙唯一的IDE,但它是.net開發人員最常用的開發工具。它自帶一個性能分析工具,你可以使用它來做開發,不同的vs版本在工具上會略有差別。

VS可以分析CPU使用率,內存分配以及資源鎖情況。它能在你開發與運行中對項目做綜合的測試。

它很強大,可以準確的測量運行了生產環境數據的大型應用程序。但是它集成在vs里面,如果你希望在生產環境下使用,需要有一個獨立的性能監控工具。這個微軟幫你想好了,從vs2013以后的版本里,在安裝光盤里有一個獨立版本。

安裝好后可以在命令行模式下使用
1.從安裝后的測試工具目錄下執行,或者將安裝目錄添加到環境變量Path里。(福利,64位安裝后目錄:C:\Program Files (x86)\Microsoft Visual Studio 14.0\Team Tools\Performance Tools )
2.執行:VsPerfCmd.exe /Start:Sample /Output:outputfile.vsp
3.運行你要測試的軟件
4.執行:VsPerfCmd.exe /Shutdown

這樣你可以獲得一個outputfile.vsp文件,再拖本地的vs里進行分析

我測試了一下,可用,但是進入cmd時需要管理員模式才行

VsPerfCmd.exe 還支持很多參數,除了上面例子里的(Sample),你還可以選擇:
Coverage(覆蓋)—搜集代碼覆蓋率數據
Concurrency(并發)—收集資源的并發數據
Trace—用于收集方法的執行時間和次數

Smple 模式會每隔幾毫秒中斷一次你的進程,并獲得堆棧信息。這個是獲得你CPU使用率的最佳方式。但是,它并不能很好的記錄I/O訪問,當然它不會增加太多的CPU使用量,它可以幫你記錄整體的運行時間。

Trace 模式則需要修改每個函數用來記錄每次調用的時間情況。這會入侵你的代碼,導致程序執行會變慢。然而,它雖然會花費更多的時間用于記錄每個函數的情況,但它可以記錄更準確的信息,特別是I/O訪問。

Coverage(覆蓋)模式不是用于性能分析,但可以讓你知道哪些代碼被執行過。這是一個很好用的功能,在你運行單元測試時,可以知道你的測試覆蓋了哪些代碼。有些商業產品可以幫助你做這些,但你還可以為自己做得更好。

Concurrency(并發)模式記錄當通過鎖或其他同步對象對資源發生爭用時發生的事件。此模式可以告訴你,如果你的線程由于競爭而被阻塞。有關異步編程和測試應用中鎖爭用量的更多信息,請參見第四章。

Visual Studio里的性能測試 工具是最好用的工具,但是他也相當的貴(恩,說的是國外,國內的大家請自行忽略)。如果你不能使用vs,我們也提供一些免費的替代產品。幾乎所有的性能工具都使用相同的底層機制(至少在Windows 8 / Server 2012及以上內核中)
ETW事件。ETW是Windows的事件追蹤,他是操作系統以快速并高效的方式記錄所有的日志信息。所有的應用程序都可以產生這些事件,分析器可以捕捉這些事件進行分析。第8章里會描述如何利在自己的程序里跑出或者捕捉這些事件。


相關文章:

  • [翻譯]編寫高性能 .NET 代碼 第一章:性能測試與工具 -- 選擇什么來衡量

  • [翻譯]編寫高性能 .NET 代碼 第一章:性能測試與工具 -- 平均值 vs 百分比

原文地址:http://www.cnblogs.com/yahle/p/6531286.html


.NET社區新聞,深度好文,微信中搜索dotNET跨平臺或掃描二維碼關注

總結

以上是生活随笔為你收集整理的[翻译]编写高性能 .NET 代码 第一章:工具介绍 -- Visual Studio的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。