2

对于预编译(可更新)的 150 *.dll ASP.NET 网站,“ JIT中的时间百分比”通常很高(> 60%)并且在应用程序预热很长时间后波动(访问的所有功能)并且没有可能生成新程序集的应用程序重新启动或文件更改?

人们会期望为所有程序集生成的机器代码将在该应用程序域的持续时间内重复使用。缓存的机器代码量是否有限?在什么情况下,同一个程序集需要在同一个应用程序域中重新 JIT?还是必然会生成新的程序集?内存压力等因素会影响此性能计数器吗?

参考

4

2 回答 2

1

它可能是程序集发出的任何东西。Linq 表达式编译或正则表达式,未正确缓存。

于 2009-12-18T18:59:48.947 回答
0

如果您正在设置缓存参数,您可能会无意中禁用预编译的服务器端缓存。看看这篇文章:

http://codeclimber.net.nz/archive/2007/04/01/Beware-the-ASP.NET-SetCacheability-method.aspx

于 2010-06-27T06:43:43.537 回答