Обеспечьте вызов mdlTerminate
Гарантирует, что механизм Simulink® вызывает метод mdlTerminate
S-функции прежде, чем уничтожить блок, это ссылается на S-функцию. Вызов mdlTerminate
позволяет вашей S-функции очищать после себя, например, путем освобождения памяти, которую это выделило во время моделирования. Механизм уничтожает Блок s-function при следующих обстоятельствах.
Моделирование заканчивается или обычно или в результате вызова ssSetErrorStatus
.
Пользователь удаляет блок.
Механизм устраняет блок как часть блочной оптимизации сокращения (см. Блочное сокращение).
Если эта опция не установлена, механизм вызывает метод mdlTerminate
вашей S-функции только если метод mdlStart
по крайней мере одного блока в модели, содержащей S-функцию, выполняемую без ошибки.
Смотрите S-функцию sfun_runtime3.c
для примера.