MATLAB® Продукт Compiler SDK™ добавляет WaitForFiguresToDie
метод к каждому классу.NET, который это создает.
Цель WaitForFiguresToDie
должен блокировать осуществление программы вызова, пока фигуры, созданные в инкапсулированном коде MATLAB, отображены. Обычно вы используете WaitForFiguresToDie
когда:
Существует одна или несколько фигур, открытых, которые были созданы блоком.NET, созданным продуктом MATLAB Compiler SDK.
Метод, который отображает графику, требует ввода данных пользователем перед продолжением.
Метод, который вызывает фигуры, был назван от main()
в консольной программе.
Когда WaitForFiguresToDie
называется, осуществление программы вызова блокируется, если какие-либо фигуры, созданные вызывающим объектом, остаются открытыми.
WaitForFiguresToDie
не берет аргументов. Ваше приложение может вызвать WaitForFiguresToDie
любое время во время выполнения.
Совет
Рассмотрите использование console.readline
метод, если это возможно, когда это выполняет большую часть этой функциональности стандартизированным способом.
Внимание
Вызов WaitForFiguresToDie
из интерактивной программы может подать заявку прекратить отвечать. Этот метод должен быть назван только из основанных на консоли программ.
Следующий пример иллюстрирует использование WaitForFiguresToDie
из приложения.NET. Пример использует блок.NET, созданный продуктом MATLAB Compiler SDK. Компонент инкапсулирует код MATLAB, который строит простой график.
Создайте папку работы для своего исходного кода. В этом примере папкой является D:\work\plotdemo
.
В этой папке создайте следующий файл MATLAB под названием drawplot.m
:
function drawplot()
plot(1:10);
Создайте компонент.NET с приложением Library Compiler или compiler.build.dotNETAssembly
использование следующей информации:
Поле | Значение |
---|---|
Имя библиотеки | Figure |
ClassName | Plotter |
Файл, чтобы скомпилировать | drawplot.m |
Например, если вы используете compiler.build.dotNETAssembly
Ввод:
buildResults = compiler.build.dotNETAssembly('drawplot.m', ... 'AssemblyName','Figure', ... 'ClassName','Plotter');
Для получения дополнительной информации смотрите, что инструкции в Генерируют блок.NET и Создают Приложение.NET.
В Visual Studio®, создайте Console App (.NET Framework) C#. Замените сгенерированный исходный код на следующий код:
using Figure.Plotter;
public class Main
{
public static void main(String[] args)
{
try
{
plotter p = new Plotter();
try
{
p.drawplot();
p.WaitForFiguresToDie();
}
catch (Exception e)
{
console.writeline(e);
}
}
}
}
Добавьте ссылку на свой сгенерированный файл блока Figure.dll
.
Скомпилируйте и запустите приложение.
Программа отображает график от 1 до 10 в графическом окне MATLAB. Приложение заканчивается, когда вы закрываете фигуру.
Примечание
Видеть, что происходит без вызова WaitForFiguresToDie
, закомментируйте вызов, восстановите приложение и запустите его. В этом случае фигура чертится и сразу уничтожается, когда приложение выходит.
libraryCompiler
| compiler.build.dotNETAssembly
| deploytool