摘要: 解析:CLR支持两种类型:值类型和引用类型。用Jeffrey Richter(《CLR via C#》作者)的话来说,“不理解引用类型和值类型区别的程序员将会把代码引入诡异的陷阱和诸多性能问题”。这就要求我们正确理解和使用值类型和引用类型。 值类型包括C#的基本类型(用关键字int、char、flo... 阅读全文
posted @ 2014-05-28 22:24 leole 阅读(853) 评论(0) 推荐(0) 编辑
摘要: 首先堆栈和堆(托管堆)都在进程的虚拟内存中。(在32位处理器上每个进程的虚拟内存为4GB)堆栈stack1、堆栈中存储值类型2、堆栈实际上是向下填充,即由高内存地址指向低内存地址填充3、堆栈的工作方式是先分配内存的变量后释放(先进后出原则)4、堆栈中的变量是从下向上释放,这样就保证了堆栈中先进后出的... 阅读全文
posted @ 2014-05-28 22:05 leole 阅读(1040) 评论(0) 推荐(1) 编辑
摘要: 垃圾回收(Garbage Collection,以下简称GC)是一些高级开发语言的一个核心部分,虽然所有的高级语言都在极力避免用户去关心它,然而对于编写高效的应用程序,理解GC是非常重要的。如果您已经了解GC的一些基础内容,那么本文将揭示一些在基于.net应用程序在windows系统上进行性能调优时... 阅读全文
posted @ 2014-05-28 13:02 leole 阅读(1681) 评论(0) 推荐(1) 编辑
摘要: ASP.NET对请求处理的过程: 当请求一个*.aspx文件的时候,这个请求会被inetinfo.exe进程截获,它判断文件的后缀(aspx)之后,将这个请求转交给ASPNET_ISAPI.dll,ASPNET_ISAPI.dll会通过http管道(Http PipeLine)将请求发送给ASPNE... 阅读全文
posted @ 2014-05-28 11:56 leole 阅读(4430) 评论(0) 推荐(0) 编辑
摘要: GC(Garbage Collector,垃圾回收器)是一种自动回收内存的机制,释放已经不再使用的对象的内存空间。 在.NET平台中,我们的托管代码一般都不再关心内存的管理,一切都有CLR(Common language Runtime)去帮我们完成了。当我们开辟内存空间用来创建对象时,使用new... 阅读全文
posted @ 2014-05-28 11:48 leole 阅读(464) 评论(1) 推荐(0) 编辑