Управляйте проверками на этапе выполнения

Типы проверок на этапе выполнения

В симуляции код, сгенерированный для ваших функций MATLAB®, включает следующие проверки на этапе выполнения и внешние вызовы функции.

  • Проверки целостности памяти

    Эти проверки обнаруживают нарушения целостности памяти в коде, сгенерированном для функций MATLAB и выполнения остановки с диагностическим сообщением.

    Внимание

    Для безопасности эти проверки включены по умолчанию. Без проверок целостности памяти нарушения приведут к непредсказуемому поведению.

  • Скорость отклика регистрируется в коде, сгенерированном для функций MATLAB

    Эти проверки включают периодические проверки на перерывы Ctrl+C в коде, сгенерированном для функций MATLAB. Включение проверок скорости отклика также включает графическое обновление.

    Внимание

    Для безопасности эти проверки включены по умолчанию. Без этих проверок единственный способ закончить продолжительное выполнение может состоять в том, чтобы отключить MATLAB.

  • Значение внешних параметров вызывает к функциям MATLAB

    Внешние вызовы функций MATLAB, например, чтобы отобразить результаты, включены по умолчанию для отладки целей. Для получения дополнительной информации о внешних функциях, смотрите Объявление функций MATLAB как Внешние Функции.

Когда отключить проверки на этапе выполнения

Обычно генерация кода с проверками на этапе выполнения включила результаты в большем количестве сгенерированного кода и более медленной симуляции, чем генерация кода с отключенными проверками. Точно так же внешние вызовы являются трудоемкими и оказывают неблагоприятное влияние на производительность. Отключение проверок на этапе выполнения и внешних вызовов обычно приводит к оптимизированному сгенерированному коду и более быстрой симуляции с этими протестами:

Рассмотрите отключение...Только если...
Проверки целостности памятиВы уверены, что ваш код безопасен и что все границы массивов и проверка размерности являются ненужными.
Проверки скорости откликаВы уверены, что не должны будете останавливать выполнение своего приложения с помощью Ctrl+C.
Внешние вызовыВы только используете внешние вызовы функций, которые не влияют на результаты приложения.

Как отключить проверки на этапе выполнения

Отключить проверки на этапе выполнения:

  1. Задайте объект параметров компилятора в рабочем пространстве MATLAB путем выдачи команды конструктора:

    comp_cfg = coder.MEXConfig

  2. Из командной строки устанавливает IntegrityChecks, ExtrinsicCalls, или ResponsivenessChecks ложь свойств, как применимый:

    comp_cfg.IntegrityChecks = false;
    comp_cfg.ExtrinsicCalls = false;
    comp_cfg.ResponsivenessChecks = false;