Main Content

このページの内容は最新ではありません。最新版の英語を参照するには、ここをクリックします。

.NET アセンブリの統合

パッケージ化された MATLAB® 関数を .NET アプリケーションに統合する

MATLAB Compiler SDK™ は、.NET アプリケーション内で MATLAB 関数をデプロイする 2 つの方法を提供します。

  • .NET 用の MATLAB データ API を使用して .NET アプリケーションにデプロイする (R2022b 以降)

  • MWArray API を使用して .NET アプリケーションにデプロイする (R2006a 以降)

MATLAB コードを .NET アプリケーションにデプロイする 2 つのオプションのうち、.NET 用の MATLAB データ API を使用する方が最近の新しいオプションであり、次の利点があります。

  • C# と MATLAB とのデータ型のマッピングを MATLAB コード内で arguments ブロックと型情報を使用して指定し、ネイティブの .NET 型でプログラミングできます。これにより、C# での MATLAB データ型の管理が不要になります。

  • MATLAB Runtime インスタンスを .NET アプリケーションに対してインプロセスまたはアウトプロセスで実行できます。デプロイされた MATLAB 関数は同期的または非同期的に実行できます。

  • スレッドセーフな設計により、ロックを必要とせず、複数のスレッドにおけるデータの作成や消費の同時実行が促進されます。これにより、特に MATLAB データの広範な操作を複数のスレッドで行う場合のパフォーマンスが向上します。

  • MATLAB のクラス メソッドが公開され、クラス オブジェクトでの直接の呼び出しが可能になっています。

  • .NET ベースの MATLAB エンジン アプリケーションとデプロイされた MATLAB アプリケーションの間の移行が最小限の作業で実現できるようになっています。

  • クロスプラットフォームの開発とデプロイがサポートされます。R2023a 以降では、MATLAB コードがパッケージ化された .NET アプリケーションを Windows®、Linux®、および macOS のプラットフォームで開発およびパブリッシュできます。これは、それらのプラットフォームのいずれかで開発を行い、他の 2 つのどちらにもパブリッシュできることを意味します。

MathWorks® では、幅広いプラットフォームに MATLAB 関数をデプロイするために、.NET 用の MATLAB データ API と Microsoft® .NET 5.0 以降を使用して .NET にデプロイすることを推奨しています。ただし、プロジェクトに適したデプロイ オプションの選択については、Choosing .NET Deployment Optionを参照してください。

MATLAB Runtime は、.NET アプリケーションを実行するマシンにインストールして設定する必要があります。詳細については、MATLAB Runtime のインストールと構成を参照してください。

カテゴリ