1

Ctrl+C中断程序。如果我dbstop on error设置为 true,这将使我进入调试器,因为中断被视为错误。但是,程序仍然中断;我无法继续它。

如果我有一个 Matlab 程序正在运行,它是否可以在它开始进入调试器后不触发错误?为了达到断点通常具有的效果,因此要么为已经运行的程序添加断点,要么告诉它“无论你现在在哪里都中断”。

这可能吗?

4

1 回答 1

1

不容易。。

正如作为重复链接的问题的答案中所建议的那样,您可以在 MATLAB 环境之外创建 MATLAB 代码可以检查的某些条件。由于 MATLAB 或多或少是单线程的,因此做这样的事情非常具有挑战性。

更好的方式:(我认为/希望)

我还没有尝试过,但我几乎可以肯定,即使代码正在运行,您也可以编辑 uicontrols,因为那是在不同的“线程”上。例如,即使您的代码正在运行,您也可以选中一个复选框。如果您要在代码中包含一些检查此复选框值是否为 1 的内容,如果它是 1,请进入调试模式,我认为这对您有用。

这样做的好处是一切都保留在 MATLAB 中,您无需执行创建文件进行调试之类的操作。坏事是你仍然需要添加额外的代码来检查有时是不可行的。

希望这对你有用。

于 2013-07-24T15:36:42.350 回答