Can I launch more than one MATLAB session in the same C program using EngOpen in MATLAB Engine?

조회 수: 1 (최근 30일)
I would like to launch more than one MATLAB session in the same C program using the MATLAB Engine routine, EngOpen.

채택된 답변

MathWorks Support Team
MathWorks Support Team 2017년 1월 7일
It is not possible to launch more than one MATLAB session in the same C program with EngOpen. On Windows, the Engine Library communicates with MATLAB using ActiveX.
MATLAB is a "multiple use" automation server, which means that multiple controller clients will connect to a single instance of the MATLAB ActiveX server application. For example, suppose you have two engOpen calls in one C program. When the first engOpen call is executed and attempts to establish a connection to MATLAB, Windows will look to see if a MATLAB ActiveX automation server is already running. If one is running, a connection will be established. If one is not running, it will launch MATLAB with the /Automation command line argument. When the second EngOpen call is executed, Windows will find the current MATLAB session and connect to it.
This is important to note that the two programs will share resources in the MATLAB application, including variables in the workspace.
Workaround:
The function "engOpenSingleUse" can be used to create multiple MATLAB sessions in the same C program.

추가 답변 (1개)

Tushar Athawale
Tushar Athawale 2016년 3월 2일
편집: MathWorks Support Team 2022년 11월 18일
The function "engOpenSingleUse" can be used to create multiple MATLAB sessions in the same C program:

카테고리

Help CenterFile Exchange에서 Startup and Shutdown에 대해 자세히 알아보기

제품

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by