JIT编译器是否可以使内联的静态方法成为可能?
例如,我们有一些代码:
class A
{
public static int c(int v)
{
return v*2
}
}
..............
Console.WriteLine(A.c(2));
在哪种情况下,JIT编译器可以将方法public static int c(int v)
内联?
答案 0 :(得分:2)
据我了解,编译器(C#或JIT)可能会或可能不会根据自己的判断内联性能,但您始终可以保证语言的行为与设计一致。即该方法的副作用,如果有的话(在这种情况下都不是),将在调用writeline之前发生。
答案 1 :(得分:0)
根据此post,您的答案是肯定的。