网站大量收购独家精品文档,联系QQ:2885784924

[性能优化方法总结.docxVIP

  1. 1、本文档共40页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
[性能优化方法总结

.NET 性能优化方法总结 Ver 1.0 2009-1-20目录1. C#语言方面... 41.1 垃圾回收... 41.1.1 避免不必要的对象创建... 41.1.2 不要使用空析构函数 ★... 41.1.3 实现 IDisposable 接口... 41.2 String 操作... 51.2.1 使用 StringBuilder 做字符串连接... 51.2.2 避免不必要的调用 ToUpper 或 ToLower 方法... 51.2.3 最快的空串比较方法... 61.3 多线程... 61.3.1 线程同步... 61.3.2 使用 ThreadStatic 替代 NameDataSlot ★... 71.3.3 多线程编程技巧... 71.4 类型系统... 81.4.1 避免无意义的变量初始化动作... 81.4.2 ValueType 和 ReferenceType. 81.4.3 尽可能使用最合适的类型... 91.5 异常处理... 101.5.1 不要吃掉异常★... 101.5.2 不要吃掉异常信息★... 101.5.3 避免不必要的抛出异常... 101.5.4 避免不必要的重新抛出异常... 101.5.5 捕获指定的异常,不要使用通用的System.Exception. 101.5.6 要在finally里释放占用的资源... 111.6 反射... 111.6.1 反射分类... 121.6.2 动态创建对象... 121.6.3 动态方法调用... 121.6.4 推荐的使用原则... 121.7 基本代码技巧... 131.7.1 循环写法... 131.7.2 拼装字符串... 131.7.3 避免两次检索集合元素... 131.7.4 避免两次类型转换... 141.7.5为字符串容器声明常量,不要直接把字符封装在双引号 里面。... 141.7.6 用StringBuilder代替使用字符串连接符 “+”. 141.7.7 避免在循环体里声明变量,... 151.8 Hashtable. 151.8.1 Hashtable机理... 151.8.2 使用HashTale代替其他字典集合类型的情形:... 161.9 避免使用ArrayList。... 161.10从XML对象读取数据... 171.11 避免使用递归调用和嵌套循环,... 171.12 使用适当的Caching策略来提高性能... 172. Ado.Net 172.1 应用A的一些思考原则... 182.2 Connection. 182.2.1 在方法中打开和关闭连接... 182.2.2 显式关闭连接... 182.2.3 确保连接池启用... 192.2.4 不要缓存连接... 192.3 Command. 192.3.1 使用ExecuteScalar和ExecuteNonQuery. 192.3.2 使用Prepare. 192.3.3 使用绑定变量 ★... 192.4 DataReader 202.4.1 显式关闭DataReader 202.4.2 用索引号访问代替名称索引号访问属性... 202.4.3 使用类型化方法访问属性... 202.4.4 使用多数据集... 202.5 DataSet 212.5.1 利用索引加快查找行的效率... 212. 使用DataView.. 213.ASP.NET. 213.1 减少往返行程(Reduce Round Trips)... 213.2 避免阻塞和长时间的作业... 223.3 使用缓存... 223.4 多线程... 223.5 系统资源... 233.6 页面处理... 233.7 ViewState. 234.JScript 244.1 JScript性能优化的基本原则... 244.2 JScript语言本身的优化... 244.3 DOM相关... 274.4 其他... 28 1. C#语言方面 1.1 垃圾回收 垃圾回收解放了手工管理对象的工作,提高了程序的健壮性,但副作用就是程序代码可能对于对象创建变得随意。 1.1.1 避免不必要的对象创建 由于垃圾回收的代价较高,所以C#程序开发要遵循的一个基本原则就是避免不必要的对象创建。以下列举一些常见的情形。  避免循环创建对象 ★ 如果对象并不会随每次循环而改变状态,那么在循环中反复创建对象将带来性能损耗。高效的做法是将对象提到循环外面创建。  在需要逻辑分支中创建对象 如果对象只在某些逻辑分支中才被用到,那么应只在该逻辑分支中创建对象。  使用常量避免创建对象 程序中不应出现如 new Decimal(0) 之类的代码,这会导致小对象频繁创建及回收,正确的

文档评论(0)

yingxiaorong28 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档