1、CLR首次加载代码造成的性能损失
四、CLR执行程序集中代码介绍了CLR在首次执行一个类的时,会初始化一个内部结构,然后当目标方法被首次调用时,JITComplier函数(JIT编译器)...会验证IL代码并将IL代码编译成本地CPU指令并存储到动态内存中,这意味着一旦应用程序终止,编译好的代码也会被丢弃,所以,当再次运行应用程序,或者同时启动应用程序的两个实例(使用两个不同的操作系统的进程...应用程序运行期间,这些方法只会对性能造成一次性的影响.除此之外,在方法内部花费的时间可能比花在首次调用方法,JIT编译和优化IL所花费的时间更多.
3、CLR加载代码时JIT编译器进行的代码优化
CLR...首次加载程序集代码时,JIT将IL编译成本地代码时,会对其进行代码优化,这类似与非托管C++编译器的后端所做的事情.这可能也会花费加多的时间生成优化代码.
?...与本机代码的联系(无论编译器的开关设置是什么)除非在Visual Stdio中关闭了"在模块加载时取消JIT优化(权限托管)"操作步骤如下:
工具-选项-调试
?