Можно передать опции -nojvm и -logfile к MATLAB® Compiler SDK™ из клиентского приложения .NET с помощью атрибутов уровня сборки NOJVM и LOGFILE. Значения этих атрибутов извлекаются вызывающими методами MWMCR класс для доступа к атрибутам и состоянию MATLAB Runtime.
The MWMCR класс предоставляет несколько методов для получения значений опций MATLAB Runtime. В следующей таблице перечислены методы, поддерживаемые этим классом.
| Метод MWMCR | Цель |
|---|---|
MWMCR.IsMCRInitialized() | Возвращает true если время выполнения MATLAB Runtime инициализировано, в противном случае возвращается false. |
MWMCR.IsMCRJVMEnabled() | Возвращает true если время выполнения MATLAB Runtime запускается с помощью .NET Virtual Machine (JVM™), в противном случае возвращается false. |
MWMCR.GetMCRLogFileName() | Возвращает имя файла журнала, переданного с LOGFILE атрибут. |
Если опции не переданы, MATLAB Runtime запускается со значениями опций по умолчанию:
| MATLAB Runtime | Значения опций по умолчанию |
|---|---|
| Виртуальная машина .NET (JVM) | NOJVM(false) |
| Использование файла журнала | LOGFILE(null) |
Все эти опции являются свойствами только для чтения и записи.
Используйте следующие атрибуты для представления опций MATLAB Runtime, которые необходимо изменить.
| Атрибут MWMCR | Цель |
|---|---|
NOJVM | Позволяет пользователям запускать MATLAB Runtime с JVM или без. В качестве входов используется логический язык. Для примера, NOJVM(true) запускает MATLAB Runtime без JVM. |
LOGFILE | Позволяет пользователям передавать имя файла журнала, принимая имя файла за вход. Для примера LOGFILE ( . |
Передача значений опций MATLAB Runtime из приложения C # . Ниже приведен пример передачи значений опций MATLAB Runtime из клиентского приложения C #:
[assembly: NOJVM(false), LOGFILE("logfile3.txt")]
namespace App1
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine("In side main...");
try
{
myclass cls = new myclass();
cls.hello();
Console.WriteLine("Done!!");
Console.ReadLine();
}
catch (Exception ex)
{
Console.WriteLine(ex.Message);
}
}
}
}