我们有一个 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/