有时,Matlab代码可能会运行很长时间。 我想停止它 - 输入Ctrl + c,但我还想在那之后执行一些代码。 e.g。
for i = 1:100000,
M(i) = function(i,values);
end
即使这个for循环没有结束,也可以通过Ctr + C或异常情况等停止。我也想调用另一个函数来做其他过程。
N = new_func(M)
save(N)
答案 0 :(得分:2)
查看onCleanup
对象。您可以通过为代码完成时提供一些您希望运行的代码来创建onCleanup
对象 - 无论代码是自然完成,还是错误完成,还是使用Ctrl-C,都会执行此操作。
对它的使用有一个小的限制 - 它需要在一个函数中使用,而不是一个脚本(因为它实际上在onCleanup
对象超出范围并被删除时执行其代码,而不是特别是在你的代码结束了)。但通常这不是一个限制。