2009-10-19 77 views
2

隨着150 * .DLL ASP.NET網站,其預編譯(更新),什麼是一個「%時一些可能的原因在JIT '在應用程序加熱(所有功能被訪問)和沒有 應用程序重新啓動或可能生成新程序集的文件更改之後很長時間(> 60%)和波動很長高,波動「%時間JIT」的預編譯的ASP.NET網站

人們會認爲爲所有組件生成的機器代碼將在該應用程序域的持續時間內重新使用。緩存的機器碼的體積是否有限制?在什麼情況下,同一個程序集需要在同一個應用程序域中重新JIT?或者是否有必要生成新的組件?內存壓力等因素是否會影響此性能計數器?

參考

+0

正則表達式生成幕後組件,如果這些都在不斷重新創建這可能是一個因素... – 2009-11-26 03:54:29

回答

1

它可以是任何東西,它裝配發射。 Linq Expressions編譯或正則表達式,不正確緩存。

+0

的確。你必須/正確/謹慎地使用正則表達式:有時他們可能會泄漏。有關如何預編譯和緩存它們的示例,請參閱http://www.informit.com/guides/content.aspx?g=dotnet&seqNum=692。 – 2009-12-21 04:11:44