RyuJIT は JIT よりも高速なコンパイラであることがわかりました。しかし、これは .NET 4.6 の新しい標準なのか、それとも Roslyn なのか?
それとも、コンパイル プロセス中に API を公開する必要があるときに Roslyn が使用されるのでしょうか。
それらの目的と、それらが見つかるフレームワークとの間で混乱しています。誰かが違いを説明できますか?
Roslynは、コード (C# または VB) を IL にコンパイルするコンパイラです。
RyuJIT は、IL をネイティブ コードにコンパイルするJust In Timeコンパイラです。
どちらもオープンソースになりました。
Roslyn API は、構文ツリー、コンパイル、セマンティック モデルを操作する場合に必要なものです。
RyuJIT には公開 API がありません。
Roslyn は、ソース コードを取得して IL バイトコードを生成するコンパイラです。RyuJIT は、実行時に上記のバイトコードを受け取り、ネイティブ コードを生成します。Roslyn をアプリに埋め込んでその場でソース コードをコンパイルすることはできますが、RyuJIT は厳密にランタイム用であり、私の知る限りアクセスできません。
あなたはリンゴとオレンジを比較しようとしています...
RyuJIT (.NET 4.6 の既定の x64 JIT) は、実行時に MSIL をネイティブ プロセッサ コードにコンパイルします。Roslyn は、(C#?) コードから MSIL を作成します。