ubuntu系统靠谱的清理内存的方法(can not allocate memory 问题)

首先声明一点,这里的内存指的是我们的运行内存,我看很多博客将二者混淆。
清理内存我们清理的是什么?我们知道,系统在执行程序时,会创建对应的进程,并将用到的部分(代码段等)加载进内存,这样就造成了内存占用。如果我们在执行指令时非正常退出(例如Ctrl+Z强制退出),那么残留进程无法关闭,就造成这部分代码段或数据段残留在内存而无法被清理,久而久之,就会造成内存不足。当然你可以选择关闭计算机实现内存清理,这是最简单的办法,但如果你是用的是服务器等不便关机的机器,就需要你手动进行清理了。我看了很多博客,大家基本上都是一个办法,可以根据这个博客来看他们的办法:https://blog.csdn.net/qq_25604813/article/details/83615330 但是这并没有解决我的问题,因为我并不是buffer缓冲区占用的比较多。
首先使用  free -m 指令:

我们看到,我是单纯的used过大,free不足。
那么我们就从根源解决问题。那就是kill process。

第一步:使用 ps -e 查看当前进程

第二步 使用 kill -9 pid 指令手动kill进程,例如我想kill掉python3 进程,则:kill -9 8935
值得注意的是,请明确你的进程是由什么CMD创建的,然后再kill对应的,不要随便删除,以免引起不必要的麻烦

删完后,再次使用 free -m ,我们看到used正常啦,大功告成

猜你喜欢

转载自blog.csdn.net/qq_41368074/article/details/111538515