Можно запустить MATLAB® сеанс с вашего Java® программа синхронно или асинхронно. Используйте эти MatlabEngine
static
методы запуска MATLAB:
MatlabEngine.startMatlab
- Запуск сеанса работы с MATLAB синхронно.
MatlabEngine.startMatlabAsync
- Запуск сеанса работы с MATLAB асинхронно.
Вы всегда должны прекратить сеанс работы с MATLAB с помощью одного из методов в Close MATLAB Engine Session.
Запустите MATLAB с Java синхронно.
import com.mathworks.engine.*; public class StartMatlab { public static void main(String[] args) throws Exception { MatlabEngine eng = MatlabEngine.startMatlab(); ... eng.close(); } }
Запустите MATLAB с Java асинхронно. Используйте get
метод возвращенного Future
объект, чтобы дождаться возврата MatlabEngine
объект.
import com.mathworks.engine.*; import java.util.concurrent.Future; public class StartMatlab { public static void main(String[] args) throws Exception { Future<MatlabEngine> engFuture = MatlabEngine.startMatlabAsync(); //Do work while MATLAB engine starts ... MatlabEngine eng = engFuture.get(); ... eng.close(); } }
Можно задать опции запуска MATLAB, когда вы запускаете сеанс работы с MATLAB. Для получения информации об опциях запуска MATLAB, см. «Обычно используемые опции запуска».
The MatlabEngine.startMatlab
и MatlabEngine.startMatlabAsync
методы принимают строковые массивы как вход.
Запустите двигатель синхронно с опциями запуска MATLAB.
import com.mathworks.engine.*; public class StartMatlab { String[] options = {"-noFigureWindows", "-r", "cd H:"}; public static void main(String[] args) throws Exception { MatlabEngine eng = MatlabEngine.startMatlab(options); ... eng.close(); } }
Запустите двигатель асинхронно с опциями запуска MATLAB.
import com.mathworks.engine.*; import java.util.concurrent.Future; public class StartMatlab { public static void main(String[] args) throws Exception { String[] options = {"-noFigureWindows", "-r", "cd H:"}; Future<MatlabEngine> engFuture = MatlabEngine.startMatlabAsync(options); ... MatlabEngine eng = engFuture.get(); ... eng.close(); } }
Чтобы завершить сеанс движка MATLAB, используйте одно из следующих MatlabEngine
методы:
Метод | Цель |
---|---|
Если процесс Java запускает Сеанс работы с MATLAB как несеанс совместной работы по умолчанию, Если сеанс работы с MATLAB является сеансом совместной работы, | |
Отключитесь от текущего сеанса работы с MATLAB синхронно или асинхронно. | |
Принудительное завершение работы текущего сеанса работы с MATLAB синхронно или асинхронно. |
com.mathworks.engine.MatlabEngine