【发布时间】:2014-12-15 13:45:41
【问题描述】:
在Matlab 2014b 中,当我在脚本开头使用CLEAR ALL 时收到以下警告,
For improved performance, consider not using CLEAR ALL within a script
这在以前的版本中没有给出(我记得)。
我发现的唯一原因是,当您从外部或从其他脚本调用脚本时,您不想清除工作区中的变量,并一次又一次地重新生成它们。
还有什么我失踪的原因吗?
删除CLEAR ALL如何提高使用单个脚本时的性能?
【问题讨论】:
-
当使用那个单一的脚本一次?大概什么都没有。但是
clear all不仅清除变量,而且还加载了函数和 mex 函数(如果我没记错的话,还有断点,它们是在该脚本中设置的)。必须再次加载这些函数(这只会花费一些时间),断点已经消失,并且很难调试以clear all开头的脚本。为确保从干净的工作区开始,clear variables就足够了。 -
我敢打赌,如果您使用
clear,您不会收到该警告。正如 Nras 解释的那样,原因是clear all也清除了函数。clear只清理变量。因此编译的函数保存在内存中。有一个look here 了解更多信息。 Amro 的回答特别有趣。 =)
标签: performance matlab