Effacer les filtres
Effacer les filtres

Initializing MATLAB runtime from c# app

32 vues (au cours des 30 derniers jours)
Chase
Chase le 30 Juin 2023
Modifié(e) : Chase le 6 Juil 2023
I have a c# windows form app that launches standalone MATLAB exes built with compiler.build.standaloneApplication. However launching these exes takes quite a long time since MATLAB runtime needs to be initialized (30 seconds to minutes for some apps). Is there a way I can preload the runtime when the c# app is launched to reduce subsequent launch times of the standalone apps?

Réponses (1)

Prannoy
Prannoy le 30 Juin 2023
Yes, you can preload the MATLAB Runtime when your C# app is launched to reduce subsequent launch times of the standalone MATLAB apps. Preloading the MATLAB Runtime ensures that it is initialized and ready to be used by the standalone apps when they are launched.
Here's an example of how you can preload the MATLAB Runtime in your C# app:
  1. Add a reference to the MathWorks.MATLAB.NET.Arrays assembly in your C# project.
  2. In your C# code, before launching the standalone MATLAB app, you can preload the MATLAB Runtime by creating an instance of the MathWorks.MATLAB.NET.Utility.MWMCR class and calling the Initialize method. This initializes the MATLAB Runtime and reduces the subsequent launch times of the standalone apps.
using MathWorks.MATLAB.NET.Arrays;
using MathWorks.MATLAB.NET.Utility;
// Preload the MATLAB Runtime
MWMCR mcr = new MWMCR();
mcr.Initialize();
3. After preloading the MATLAB Runtime, you can launch the standalone MATLAB app as usual.
  1 commentaire
Chase
Chase le 30 Juin 2023
Modifié(e) : Chase le 6 Juil 2023
@Prannoy Thanks for your response. When trying to create an instance of MWMCR, I get this error
Note: THIS CONSTRUCTOR SHOULD ONLY BE REFERENCED FROM COMPILER GENERATED CODE.
CS1729: 'MWMCR' does not contain a constructor that takes 0 arguments
I have a reference to MWArray in my project ( C:\Program Files\MATLAB\MATLAB Runtime\<version>\toolbox\dotnetbuilder\bin\win64\<framework_version>\MWArray.dll )

Connectez-vous pour commenter.

Catégories

En savoir plus sur Get Started with MATLAB Compiler SDK dans Help Center et File Exchange

Produits


Version

R2023a

Community Treasure Hunt

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

Start Hunting!

Translated by