Phi*_*eck
5
这是a) - 每次执行程序.当执行程序集的位时,JITter会将它们编译并缓存在内存中.所以每个位在运行之前只编译一次,然后每次都在本机运行.但是,这些编译的位仅存储在存储器中,并在程序终止后被丢弃.
如果你愿意,你可以ngen用来创建和缓存已编译的图像,在这种情况下答案变为C) - 一次,在执行之前.
一个重要的特殊情况澄清(来自svick).请注意,在Windows 8,面向.NET 4.5或更高版本,装配和或者是安装到GAC或来自Windows应用商店是一个候选自动本地图像生成.这些本机映像由计划的NGen任务根据使用情况创建.