2013-07-24 2 views
1

Ctrl + C прерывает программу. Если у меня есть dbstop on error значение true, это поместит меня в отладчик, потому что прерывание рассматривается как ошибка. Однако программа по-прежнему прерывается; Я не могу продолжать это.Могу ли я ввести отладчик, отправив прерывание/сигнал?

Если у меня есть программа Matlab, возможно ли это после того, как она началась, чтобы ввести отладчик без запуска ошибки? Чтобы добиться эффекта, который обычно имеет точка останова, нужно либо добавить точку останова для уже запущенной программы, либо сказать, что она «ломается, где бы вы ни находились сейчас».

Возможно ли это?

ответ

1

Не легко ..

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

Лучший путь: (я думаю/Hope)

Я не пробовал еще, но я почти уверен, что вы можете редактировать uicontrols даже если код выполняется, потому что находится на другом " нить ". Например, вы можете установить флажок даже во время работы вашего кода. Если вы должны включить в свой код что-то, проверяющее на это значение флажка равным 1, и если оно равно 1, введите режим отладки, я думаю, что это сработает для вас.

Хорошо, что все остается в MATLAB, и вам не нужно делать что-то вроде создания файла для отладки. Плохо, что вам все равно нужно добавить дополнительный код, чтобы проверить, что иногда не представляется возможным.

Надеюсь, что это сработает для вас.

Смежные вопросы