ユーザ用ツール

サイト用ツール


it技術:dotnet:nativeaot

文書の過去の版を表示しています。


NativeAOT

.NETネイティブ

.NETネイティブ(Native) とは、.NET を対象とするアプリケーションは、特定のプログラミング言語で記述され、中間言語(IL)にコンパイルされます。この中間言語(IL)を完全にコンパイルして直接ネイティブコードを生成する技術となります。
実行時に中間言語(IL)からコンパイルするJIT(Just-In-Time)と違い、実行前にコンパイルするので事前コンパイラAOT(Ahead-Of-Time)と呼ばれます。

.NET の生産性の高さと、ネイティブコードのハイパフォーマンスを入手できることができる一挙両得の技術として注目されています。

NativeAOTとは

ILを完全にネイティブコードに落とし込むオープンソースプロジェクト
https://www.cnblogs.com/hez2010/p/dotnet-with-native-aot.html

2021年以降は、NativeAOTリポジトリ
https://github.com/dotnet/runtimelab/tree/feature/NativeAOT
※将来的にはメインプロジェクトに統合される予定

2020年以前は、corertリポジトリ(CoreRT)
https://github.com/dotnet/corert
※corert自体は実験的プロジェクトで、実用する際は注意が必要なものだった。

注意点

このテクノロジーは、リフレクションにあまり依存できないため少し制限があります。

NativeAOTの準備

C++ ビルドツール

マイクロソフト C++ ビルドツールのインストール
https://visualstudio.microsoft.com/ja/visual-cpp-build-tools/

C++ によるデスクトップ開発

Visual Studioのとインストールする環境の選択画面にてワークロードタブに「C++によるデスクトップ開発」にチェックを入れ、「インストール」をクリックします。
https://sukkiri.jp/technologies/ides/visual-studio-community/vs_com_win_install.html

https://stackoverflow.com/questions/45702/how-to-compile-a-net-application-to-native-code

it技術/dotnet/nativeaot.1634807019.txt.gz · 最終更新: 2021/10/21 18:03 by yajuadmin