CLR汇编者/JIT是否进行过任何逃脱分析? 例如,在 Java,看来 a looperra 分配给一只不躲避 lo的 lo块的物体在 st而不是蒸上得到分配(见)。 Java的替罪分析。
如下文所述,要澄清,汇编者将选择取消<代码>foo<>/code>的得分,因为它永远不会逃脱。
class Foo
{
int number;
Foo(int number) { this.number = number; }
public override string ToString() { return number.ToString(); }
}
for (int i = 0; i < 10000000; i++)
{
Foo foo = new Foo(i);
Console.WriteLine(foo.ToString());
}