有没有办法释放内存?

有没有办法释放内存?

我记得,在我使用 Windows Vista/7 的时候,有一个名为 memclear 或 memclean 的工具,可以通过调用 NT 垃圾收集 API 来释放一些内存。可能它也清除了缓存。很多时候,当我使用 Ubuntu 时,一段时间后系统分配的内存停留在几 GB,当我执行图像编辑等内存密集型任务时,我必须等待相当长的一段时间才能交换额外的 GB。

有没有办法强制内核 GC 之类的东西释放真正未使用的内存? (当我启动时,内存消耗不到1G)

答案1

从您发布的内容来看,您似乎不了解 Linux 中的内存是如何工作的。

我推荐阅读

这些网站的要点是你拥有比你想象的更多的“免费”内存。

答案2

如果是虚拟机的话可以这样做

echo 1 > /proc/sys/vm/drop_caches

例如,在内存膨胀的 vmware 中(即安装了 vmware-tools 或 open-vmware-tools),您可以将缓存中使用的当前内存返回给虚拟化管理程序。

正如其他人所说,这仅在非常特定的条件下有用。

相关内容