メインコンテンツ

matlab::engine::startMATLABAsync

MATLAB を非同期的に起動する

説明

FutureResult<std::unique_ptr<MATLABEngine>> startMATLABAsync(const std::vector<String>& options = std::vector<String>())

FutureResult<std::unique_ptr<MATLABEngine>> startMATLABAsync(const matlab::engine::MATLABApplicationMode mode, const std::vector<String>& options = std::vector<String>()) (R2026a 以降)

オプションの MATLAB® 起動オプションを指定して MATLAB を非同期的に起動します。アプリケーション モードを指定しなかった場合、MATLAB は別のプロセスで起動します。それ以外の場合は、MATLAB は指定されたアプリケーション モードで起動します。同一のアプリケーション内でインプロセス エンジンとアウトプロセス エンジンを併用することはできません。

インクルード

名前空間:

matlab::engine
インクルードMatlabEngine.hpp

パラメーター

const std::vector<String>& options

MATLAB を起動するために使用する起動オプション。複数の起動オプションを指定できます。エンジンは、サポートされない起動オプションに記載されているオプションを除くすべての MATLAB 起動オプションをサポートします。オプションのリストについては、プラットフォーム固有の matlab (Windows) コマンド、matlab (macOS) コマンド、または matlab (Linux) コマンドを参照してください。

const matlab::engine::MATLABApplicationMode mode (R2026a 以降)

アプリケーションを起動するモード:

  • MATLABApplicationMode::IN_PROCESS

  • MATLABApplicationMode::OUT_OF_PROCESS

アプリケーションの実行ごとに、インプロセスでの MATLAB の起動は 1 回だけ許可されます。インプロセスの MATLAB セッションがアクティブなときに startMATLAB を再度呼び出すと、関数は既存の MATLAB へのポインターを返します。

インプロセスの MATLAB を終了した場合、別の MATLAB を再起動することはできません。

アプリケーションでは、インプロセス エンジンまたはアウトプロセス エンジンのいずれかを使用できます。

例については、C++ からの MATLAB セッションの開始を参照してください。

戻り値

FutureResult<std::unique_ptr<MATLABEngine>>

MATLABEngine へのポインターを取得するために使用する FutureResult オブジェクト

サポートされない起動オプション

エンジンは次の MATLAB 起動オプションをサポートしていません。

  • -h

  • -help

  • -?

  • -n

  • -e

  • -logfile

MATLAB の起動オプションの詳細については、よく使われる起動オプションを参照してください。

すべて展開する

MATLAB を非同期的に起動して、FutureResult オブジェクトを返します。FutureResult を使用して MATLABEngine オブジェクトへのポインターを取得します。

FutureResult<std::unique_ptr<MATLABEngine>> matlabFuture = startMATLABAsync();
...
std::unique_ptr<MATLABEngine> matlabPtr = matlabFuture.get();

バージョン履歴

R2017b で導入

すべて展開する