c# - 在 C# 中,启动时,有没有办法强制 JIT 编译器接触整个应用程序中的所有 MSIL 代码?

标签 c# .net visual-studio

我们有一个 C# 程序可以执行一些计时测量。不幸的是,第一次测量比第二次和后续时间慢 20 倍,这可能是由于 JIT(即时)编译。

有没有办法确保在启动时,整个应用程序中的每一行 MSIL 代码都使用 JIT 编译器进行编译?

最佳答案

正如ta.speot.is所说,答案很可能是使用NGEN;这是一种工具,可以预先编译您的程序集并将其转换为您正在运行的平台的 native 代码。

因此,它通常在应用程序的设置阶段运行。

MSDN 在这里有一个指南:

http://msdn.microsoft.com/en-us/library/6t9t5wcf(v=vs.71).aspx

关于c# - 在 C# 中,启动时,有没有办法强制 JIT 编译器接触整个应用程序中的所有 MSIL 代码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9583460/

相关文章:

asp.net - 发布管理 - 发布给用户子集 - 它对于面向公众的网站将如何工作

.net - wmi .net 设置串口?

c# - .NET/C# 调试 : How to debug a classical heisenbug?

c# - 可变参数的LINQ方法

c# - MVC 2.0 中的绑定(bind)下拉列表

c# - 这是内存泄漏还是垃圾收集会修复它

.net - .NET 的 Visual Studio 监 window 口中可用的特殊变量有哪些?

使用应用程序在密集内存中进行 C# 垃圾收集

c# - 我需要更改asp :Login control button的样式和控件使用

c++ - Visual Studio 中 Opencv 的介绍性示例程序以代码 -1 退出。没有理由