- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
如何使用VS自带的性能分析工具来分析我们编写的.NET程序,一边找出程序性能的瓶颈,改善代码的质量。在实际开发中,性能真的很重要,往往决定一个产品的生死~良好的用户体验的基础之一也是程序要有好的性能~下面以一个大家熟悉比较极端的例子,来说明编写代码时考虑性能的重要性。
示例程序代码如下:
usingSystem;usingSystem.Collections.Generic;usingSystem.Linq;usingSystem.Text;…B1。性能测试
^ssPrOgram咛55intstart=Environment.TickCount;ii1^。。…’strings=;…”…+=Outerindex=;+=i;+=Innerindex=;+=j;+=;intmiddle=Environment.TickCount;Console.WriteLinProgrampartirunfor{0}seconds,0.001*(middle-start));r(inti=0,i1000,i++){_,,…j=0,j200,j++)s.AppeOuterindex=),s.Append(i),s.AppeInnerindex=),s.Append(j),}intend=Environment.TickCount;Console.WriteLin(rogrampart2runfor{0}seconds,0.001*(end-middle));//Console.ReadKey();
}
}}
■2^ile:///EWisu3lStudio201O/VS20lft201ug,二1回
r-ogiranipar^tlrunforG.116seconds
Bogranrart2runfoi0.12Sseconds差距就是这么大!
我们可以使用VS自带的性能分析工具来分析这个程序。可以通过分析”--启动性能向导”来启动性能分析
我们可以根据需要选择不同的分析方法
性能向导--第1页决3页)
会析掠的应片程序可帮册断应用程序的性能可财,帔洞M程序中届帛见的胡用方法.若要升始会折戟UT选攻中蟀一种分析右法.
要梗用什尚折方法?
n£PU弟也建议)?
河H水平监视占用淄CPU的应程序
Q幅裁?
蟀图签谓用计数辛璃可
MET内存U闱
源踪托管内存分闯
O井凳⑥
睑iffl等待其芯建的痒
匚坡果赍源m用魏提凶
匚可阿贤瘫衣片程序的行为①
院薛有君海彖的洋汨信,尽面以“CPU采样”分析为例
SWJSiK旧H畋呗目[啊生庞咽ismtg9KUM)皿网工成坦净g?£$)洒讽|倒口响HR^Hj□全醵迎)VSZLOttSflfH12D71D[3).vsprmUH;活泓吊URMl姬磨■*Programxa
学当脉:指阁-点/丑出苴扣宓
示例分析振告
衅的样本乾[为暗5
4佑网1吨性扭Rmgwm.MSX以而gS
6Syttem§tiiHg_dnwt(EtriH单rtringj
ft5.y^gm-$trin§-CcHncit(QbjKt;c^ject)100.?1,4952.2A52J44仲4酒中河唱;区用旌询:AJ国町N)Jft行单个:[作域募的函敬茎锄*0窜的咬S-ystern.String.CcmcBtCslring.itringlSystem.String.CQflcatCobjed;object)Sstern.Text9Elnfl§iBuilder.Apipetid(iint32)V£2D10H:|!gft55tPrc.gram.MainCstnng[J}Sys-tern.Text.SlnngBuiIder.Append(siring]独占1至氏百孑比52.2442.0■3.5B
l14乎
I0.3D切换到函数视图VS2QM艘KK120710(3jr?p^ogremrC-s卜=诚整醐iiN〕T顼a上为2?14*占
独占舟散
心占gffi百分比
卷曰样疝百狞比
^ysttm.String.CoREa^albiKfjObje-rtj
141
141
47M
42.W
;Systeni.SlKing,CtrKal(ftringIfitniig)
175
175
泊4
5M4
System.5tringiFillStringCFeckE-d(5.tring,int32l5tring)
1
1
0s30
0JQ
System.?wctStringBuilde-rJqpp?nd(irTt321
12
12
3.53
3.53
S^stem.TewtStringBuJlder.App^ndfstring)
1
1
030
0,30
VS201Ofi??JK.PrGgr3ni.lMain(ttring[|)
335
5
100.M
149
定位到我们的源码:
问题找到了~
文档评论(0)