释放 SAS 内存

Release SAS memory

我在 SAS 上 运行 一些正在生成数据的代码,但由于某种原因,它冻结了。我退出程序并重新启动 SAS,但发现它没有清除内存。这是很多数据,大约 20 场演出,所以失去那么多 space 比我愿意放弃的要多。通常,当我关闭并重新启动 SAS 时,它会清除该内存,但这次它没有,即使在重新启动桌面后(它是 Windows PC on Windows 10)。有什么建议或想法吗?

有时 运行未正常结束的离开进程会将它们的临时数据留在您的 WORK 目录中。这里有两种方法:

使用cleanwork.exe

运行 在提升的命令提示符下执行以下操作,其中 C: 是安装 SAS 的驱动器并且您的 SAS WORK 目录所在。

"C:\Program Files\SASHome\SASFoundation.4\cleanwork.exe" /v C:

这将在整个卷中搜索临时 SAS 文件,这可能需要一段时间。如果您只想 清理您的 WORK 目录并使其 运行 更快,您可以在 sas9.cfg 文件中找到它。例如:

"C:\Program Files\SASHome\SASFoundation.4\cleanwork.exe" /d "%TEMP%\SAS Temporary Files"

Documentation

从 WORK 中手动删除它

进入您的 WORK 目录:

  1. 打开 SAS

  2. 键入以下代码:

    %put %sysfunc(getoption(work));

  3. 检查你的日志。您会看到类似这样的内容:

    C:\Path\_TD_<numbers and letters>\<id>

  4. 转到 _TD 所在的目录。

删除此目录中所有 files/folders 开头为:

  • #TD
  • _TD
  • SAS_util

注意:如果您使用的是Enterprise Guide,您可以删除“EGTEMP”文件夹中的所有内容。如果您在删除其中的临时文件时遇到问题,check out Unlocker。这有点老派,但仍然适用于 Windows 10!很棒的小工具。