Асинхронный вызов методов. NET

Как MATLAB обрабатывает асинхронные вызовы метода на.NET

Возможно вызвать синхронный метод асинхронно в MATLAB®. С некоторыми модификациями можно использовать Microsoft® BeginInvoke и EndInvoke методы. Для получения дополнительной информации обратитесь к статье Calling Synchronous Methods Asynchronously MSDN®.

Можно использовать делегатов, чтобы вызвать синхронный метод асинхронно при помощи BeginInvoke и EndInvoke методы. Если поток, который инициирует асинхронный вызов, не должен быть потоком, который обрабатывает результаты, можно выполнить метод коллбэка, когда вызов завершается.

Примечание

MATLAB является однопоточным приложением. Поэтому обработка асинхронных вызовов в среде MATLAB может привести к мертвым блокировкам.

Используя EndInvoke С out и ref Аргументы типа

Делегат MATLAB подпись для EndInvoke следует специальным правилам отображения, если у вашего делегата есть out или ref аргументы типа. Для получения информации об отображении смотрите Делегатов.NET С и касательно Аргументов типа. Для примеров смотрите EndInvoke страница с описанием.

Используя опрос, чтобы обнаружить, когда асинхронный вызов заканчивается

Для MATLAB, чтобы обработать событие, которое выполняет коллбэк делегата на основном потоке, вызовите MATLAB pause (или подобное) функция.

Смотрите также

|

Внешние веб-сайты