停止运行此脚本吗 每当m文件执行停止时,在MATLAB中运行默认脚本
每当m文件执行停止时,在MATLAB中运行默认脚本
matlab
每当m文件执行停止时,在MATLAB中运行默认脚本,matlab,Matlab,当m文件停止执行时,是否可以让matlab运行默认脚本?我不是指退出matlab时运行的finish.m,我希望即使我按ctrl+C中断运行脚本的执行,也能运行脚本。这可能吗?您可以使用onCleanup。当你提到Ctrl+C操作时停止运行此脚本吗,我突然想到了这一点以下是文件:Loren在这里有一些例子:如果一个脚本调用另一个脚本辅助论坛,是否希望在每个脚本完成时运行此scriptfinish脚本?还是仅最终完成?还有,您希望在这个scriptfinish中包含什么?我不想从我自己的脚本文件中专门调用任何其他
当m文件停止执行时,是否可以让matlab运行默认脚本?我不是指退出matlab时运行的finish.m,我希望即使我按ctrl+C中断运行脚本的执行,也能运行脚本。这可能吗?
您可以使用
onCleanup
。当你提到Ctrl+C操作时,我突然想到了这一点
以下是文件:
Loren在这里有一些例子:
如果一个脚本调用另一个脚本,是否希望在每个脚本完成时运行此
scriptfinish
脚本?还是仅最终完成?还有,您希望在这个
scriptfinish
中包含什么?我不想从我自己的脚本文件中专门调用任何其他脚本。我想知道,当我以任何方式停止执行正在运行的脚本时,是否可以从Matlab运行另一个脚本,可能是通过结束调试会话或在脚本运行时按ctrl+c;类似于C中类对象被销毁时自动调用析构函数。我想在这个脚本中包含一些释放内存的东西,例如fclose('all')命令。@user13267:那么为什么不编写类或函数而不是脚本呢?感觉这个你想要的“清理”脚本将用于执行清理任务,而当你使用正确的构造时,这些任务是不必要的…@user13267:CTRL+C用于终止所有正在运行的脚本/函数等。它很像一个紧急逃生门;如果打开门的动作会点燃燃烧着的建筑物中唯一未燃烧的楼梯,这将违背门的整体概念…但这仍然要求您在任何和所有函数中明确调用
onCleanup
…此外,我相信它只有在其使用的函数超出范围时才会激活,这在脚本中或按CTRL+C时都不会发生。此外,在Loren的博客上搜索“CTRL+C”时会出现以下情况:“据我所知,MATLAB在编程级别上没有任何处理Ctrl-C的工具。我不知道你为什么不想使用函数,但出于这个原因,可能还有其他一些原因停止运行此脚本吗,我更喜欢使用这个解决方案。”-LorenWell,这很奇怪,但是这里的文档和Steve Lord的评论()建议
onCleanup
使用Ctrl+C。我现在没有时间尝试。另外,编写函数通常比编写脚本更好。也许@user13267会决定这样做?我刚刚测试过。它似乎可以使用Ctrl+C并退出调试器,但只在函数中,而不是在脚本中。尽管如此,这并不是OP想要的,因为他/她不想在每个函数/脚本中都包含一行
onCleanup(@()fclose(fid));
来源:【九爱网址导航www.fuzhukm.com】 免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!