Was ist der Unterschied zwischen RyuJIT und Roslyn?

8

Ich verstehe, dass RyuJIT ein schnellerer Compiler als JIT ist. Aber ist es der neue Standard für .NET 4.6 oder ist das Roslyn?

Oder wird Roslyn verwendet, wenn Sie während des Kompilierungsprozesses APIs bereitstellen müssen?

Ich bin verwirrt zwischen ihren Zielen und den Rahmenbedingungen, in denen sie gefunden werden. Kann jemand den Unterschied erklären & amp; wenn du eins über das andere willst, bitte?

    
myfunnyfella 12.07.2016, 23:51
quelle

3 Antworten

10

Roslyn ist ein Compiler, der Ihren Quellcode entgegennimmt und IL-Bytecode generiert. RyuJIT nimmt diesen Bytecode zur Laufzeit und erzeugt nativen Code. Sie können Roslyn in eine App einbetten, um Quellcode im laufenden Betrieb zu kompilieren, aber RyuJIT ist ausschließlich für die Laufzeit und kann nicht so weit wie ich weiß zugegriffen werden.

    
Joel Lucsy 13.07.2016 00:35
quelle
9

Roslyn ist der Compiler, der Ihren Code (C # oder VB) nach IL kompiliert.

>

RyuJIT ist ein Just In Time Compiler, der deine IL mit einem nativen Code kompiliert.

>

Beide sind jetzt Open Source.

Roslyn

RyuJIT , Lernprogramm

Roslyn API ist, was Sie brauchen, wenn Sie mit Syntaxbaum, Kompilierung und semantischem Modell spielen wollen.

RyuJIT hat keine öffentliche API.

    
Dudi Keleti 13.07.2016 11:20
quelle
2

Sie versuchen Äpfel mit Orangen zu vergleichen ...

RyuJIT (das Standard-x64-JIT für .NET 4.6) kompiliert MSIL während der Laufzeit in nativen Prozessorcode. Roslyn erstellt MSIL aus Ihrem (C #?) Code.

    
Joezer 05.10.2016 07:18
quelle

Tags und Links