Main Content

MATLAB 中的工具箱路径缓存

关于 MATLAB 中的工具箱路径缓存

出于性能原因,MATLAB® 会禁用对 matlabroot 文件夹的文件夹更改检测,并跨会话缓存文件夹信息。禁用的文件夹更改检测和缓存功能常常对您透明。但是,如果 MATLAB 未找到最新版本的 MATLAB 代码文件,或者您收到有关路径缓存的警告,则可能需要更新缓存。

启动时使用缓存文件

启动时,MATLAB 从缓存文件中获取信息以构建 matlabroot 文件夹缓存。得益于缓存文件,启动速度更快,特别是当您从网络服务器运行 MATLAB 或 matlabroot 文件夹内有许多文件夹时。当会话结束时,MATLAB 会更新缓存文件。

如果您清除预设项窗口的常规预设项页中的启用工具箱路径缓存复选框,MATLAB 在启动时不会使用缓存文件。而会通过读取操作系统文件夹来创建缓存,这比使用缓存文件速度要慢。

更新缓存和缓存文件

工具箱路径缓存的工作原理

MATLAB 将文件名和文件位置缓存在 matlabroot 文件夹中(从本质上而言,即存储在已知文件列表中)。此文件夹用于存放随 MathWorks® 产品一起提供的文件,除非安装和更新产品,否则这些文件不会更改。由于 MATLAB 不会主动监控这些文件夹,因此缓存这些文件夹可以在会话期间提供更好的性能。

我们强烈建议您将创建的任何 MATLAB 代码文件和您编辑的由 MathWorks 提供的任何文件保存在 matlabroot 文件夹树之的文件夹中。如果将文件保留在 matlabroot 文件夹中,则安装新版 MATLAB 时,这些文件可能被覆盖。

何时更新缓存

将文件添加到 matlabroot 文件夹时,需要更新缓存和缓存文件。当使用 MATLAB 安装程序安装工具箱或工具箱更新时,MATLAB 会自动更新缓存和缓存文件。当使用 MATLAB 工具时(例如,将 MATLAB 编辑器中的文件保存到 matlabroot 文件夹时),MATLAB 也会自动更新缓存和缓存文件。

当通过某些其他方式在 matlabroot 文件夹中添加或删除文件时,MATLAB 可能无法识别这些更改。例如,当您:

  • 使用外部编辑器将新文件保存在 matlabroot 文件夹中

  • 使用操作系统功能和命令在 matlabroot 文件夹中添加或删除文件

然后尝试使用一个新文件时,MATLAB 会显示以下消息:

Undefined function or variable

请更新缓存,以便 MATLAB 识别您在 matlabroot 文件夹中所做的更改。

更新缓存的步骤

要更新缓存和缓存文件,请执行以下操作:

  1. 主页选项卡的环境部分,点击 预设项。选择 MATLAB > 常规

  2. 点击更新工具箱路径缓存并点击确定

备用函数

要更新缓存,请使用 rehash toolbox。要同时更新缓存和缓存文件,请使用 rehash toolboxcache。有关详细信息,请参阅 rehash