RyuJIT和Roslyn之间的区别是什么?

时间:2016-07-12 23:51:51

标签: .net roslyn ryujit

据我所知,RyuJIT比JIT更快。但它是.NET 4.6的新标准还是Roslyn?

或者在编译过程中需要公开API时是否使用了Roslyn?

我在他们的目的和他们将要找到的框架之间感到困惑。有人可以解释它们的区别吗?&当你想要一个在另一个上面时,请?

3 个答案:

答案 0 :(得分:18)

Roslyn是将代码(C#或VB)编译为IL的编译器。

RyuJIT是一个Just In Time编译器,可将您的IL编译为本机代码。

它们现在都是开源的。

Roslyn

RyuJITTutorial

如果您想使用语法树,编译和语义模型,那么Roslyn API就是您所需要的。

RyuJIT没有公共API。

答案 1 :(得分:17)

Roslyn是一个编译器,它可以获取源代码并生成IL字节码。 RyuJIT在运行时获取所述字节码,并生成本机代码。您可以将Roslyn嵌入到应用程序中以便动态编译源代码,但RyuJIT严格用于运行时,据我所知无法访问。

答案 2 :(得分:5)

您正在尝试将苹果与橙子进行比较......

RyuJIT(.NET 4.6的默认x64 JIT)在运行时将MSIL编译为本机处理器代码。 Roslyn从您的(C#?)代码创建MSIL。