我使用以下命令从控制台 (Ubuntu 14.04) 调用 python 脚本 (2.7):python script_name.py。在某些时候,我想通过按 Ctrl-C 来停止正在运行的脚本。但是,当我检查 Ubuntu System Monitor 时,python 脚本使用的内存并没有被释放(我在调用脚本之前、过程中以及按下 Ctrl-C 停止脚本之后监控了 Ubuntu System Monitor)。我尝试使用 http://www.upubuntu.com/2013/01/how-to-free-up-unused-memory-in.html 上解释的命令释放内存,但没有用(我的意思是,内存使用没有改变)。
但是,如果我使用pycharm来运行和停止脚本,那么一旦我按下停止按钮,内存就会被直接释放。出于某些原因(例如来自 ssh 或只是为了从控制台进行测试),我想从控制台运行我的脚本(不使用 pycharm 或任何其他 IDE)。
我的问题是,如果我从控制台运行脚本,命令是什么,或者如何停止运行 python 脚本并直接释放脚本使用的内存?
非常感谢。
最佳答案
这些命令不起作用,因为您试图实现的不是它们所做的。你是如何检查你的 Python 脚本使用的内存的。我使用 top
查看内存和每个进程可以使用的内存(默认按升序排序)。您可能已经在系统有时间注册 python 进程被杀死之前检查过,我已经使用了很多而且我从来没有调整过操作系统在进程被 ctrl 杀死后没有取回内存+ c
。
当你停止程序时,Pycharm 可能正在做一些清理,而不是当你从 shell 发出 SIGTERM 进程时,只需等待操作系统回收内存 versys
关于python - 一旦 python 脚本从终端 (Ctrl-C) 停止,如何释放 Ubuntu 内存?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44752441/