ProfileOptimization 類別
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
根據先前編譯期間所建立的設定檔,對可能要執行的方法執行背景編譯,改善需要 Just-In-Time (JIT) 編譯器之應用程式的應用程式定義域啟動效能。
public ref class ProfileOptimization abstract sealed
public static class ProfileOptimization
type ProfileOptimization = class
Public Class ProfileOptimization
- 繼承
-
ProfileOptimization
備註
重要
配置檔優化需要多核心計算機。 其他電腦上會忽略方法。
每次在應用程式域中起始配置檔優化時,都會讀取先前使用期間所建立的配置檔。 配置檔中的資訊可用來識別最有可能在啟動期間執行的方法,以引導背景編譯。 在多核心計算機上,這會增加方法在需要時已經編譯的機會,讓主要應用程式線程不需要呼叫 JIT 編譯程式。
每次使用時都會覆寫配置檔案,因此一律包含啟動期間使用哪些方法的最新資訊。
優化配置檔不限於應用程式域啟動。 它們可用於需要大量使用 JIT 編譯程式的任何活動。 您可以維護應用程式域的多個配置檔,讓每個這類活動都有自己的配置檔。
若要在應用程式域中使用優化配置檔,您必須呼叫 SetProfileRoot 方法,並指定配置檔儲存所在的資料夾。 資料夾必須已經存在。 若要開始使用設定檔,請呼叫 StartProfile 方法,並指定配置檔的檔名。 如果先前未記錄檔案,則會在第一次使用時加以建立。 第一次建立配置檔時,沒有效能優勢。
配置檔優化不會變更執行方法的順序。 方法不會在背景線程上執行;如果方法已編譯但從未呼叫,則不會使用。 例如,如果配置檔檔損毀或無法寫入指定的資料夾 (,因為資料夾不存在) ,程式執行會繼續執行,而不會進行優化分析。
方法
SetProfileRoot(String) |
啟用對目前應用程式定義域的最佳化程式碼剖析,並設定儲存最佳化設定檔的資料夾。 單核心電腦上,這個方法會被忽略。 |
StartProfile(String) |
在背景執行緒中,對先前指定設定檔名稱中記錄的方法啟動 just-in-time (JIT) 編譯。 開始錄製目前的方法使用,稍後會覆寫指定的設定檔檔案。 |