ProfileOptimization 类
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
通过基于以前编译中创建的配置文件,执行可能执行的方法的后台编译,提高了需要实时 (JIT) 编译器的应用程序中应用程序域的启动性能。
public ref class ProfileOptimization abstract sealed
public static class ProfileOptimization
type ProfileOptimization = class
Public Class ProfileOptimization
- 继承
-
ProfileOptimization
注解
重要
配置文件优化需要多核计算机。 在其他计算机上将忽略这些方法。
每次在应用程序域中启动配置文件优化时,都会读取以前使用期间创建的配置文件。 配置文件中的信息用于通过标识在启动期间最有可能执行的方法来指导后台编译。 在多核计算机上,这会增加方法在需要时编译方法的可能性,以便main应用程序线程不必调用 JIT 编译器。
配置文件在每次使用时都会覆盖,因此它始终包含有关在启动期间使用哪些方法的最新信息。
优化配置文件不限于应用程序域启动。 它们可用于需要大量使用 JIT 编译器的任何活动。 可以为一个应用程序域维护多个配置文件,以便每个此类活动都有自己的配置文件。
若要在应用程序域中使用优化配置文件,必须调用 SetProfileRoot 方法并指定存储配置文件的文件夹。 该文件夹必须已存在。 若要开始使用配置文件,请调用 StartProfile 方法并指定配置文件的文件名。 如果之前未记录该文件,则会在首次使用时创建该文件。 首次创建配置文件时没有性能优势。
配置文件优化不会更改方法的执行顺序。 方法不在后台线程上执行;如果已编译但从未调用过某个方法,则根本不使用该方法。 例如,如果配置文件已损坏或无法写入指定文件夹 (,因为文件夹不存在) ,程序执行将继续执行,而无需优化分析。
方法
SetProfileRoot(String) |
启用当前应用程序域的优化配置,并设置存储优化配置文件的文件夹。 在单核计算机上,此方法被忽略。 |
StartProfile(String) |
启动方法的实时 (JIT) 编译,这些方法记录在后台线程上的指定配置文件中。 开始记录当前方法的使用,此记录过程之后将覆盖指定的配置文件。 |