Ubuntu 14.04 在 RAM 已满时清除交换

Ubuntu 14.04 在 RAM 已满时清除交换

我正在运行一个 Python 程序,由于某种原因,它偶尔会发疯。然后我被迫终止该程序,但该程序使用的 RAM 和交换空间并未释放。这会导致关机时出现挂起问题,其他用户已经报告过这种情况。

解决挂起问题的方法是关机前清除 Swap。我在网上看到的唯一清除 Swap 的方法是使用 swapoff/swapon。但是,使用 swapoff 需要足够的 RAM 来移动所有内容(即使数据不再使用)。

问题是该程序有时也会占用大量内存。因此,系统将拒绝执行 swapoff。有没有办法清除 Swap 而不需要占用内存,还是每次发生这种情况时我都必须切断计算机电源?或者,有没有办法清除 RAM,以便有足够的空间运行 swapoff?或者也许有办法找到被杀死的程序占用的内存并让 Ubuntu 清除这些内存?

相关内容