Python 脚本被“杀死”

ale*_*rfo 9 python linux out-of-memory python-2.7

我遇到了 python 脚本被杀死的问题。我一直使用这个脚本,没有任何问题,直到两天前,然后它开始打印,在中止执行之前没有任何代码更改,字符串“killed”。 其他人尝试在他们的系统上运行相同的代码,并且运行良好,就像两天前对我来说的那样。

我读过一些旧的类似问题,并且我发现问题可能是由于代码中的内存管理不良而导致的内存不足问题。这对我来说听起来有点奇怪,因为直到几天前它都可以完美地工作,并且问题只出现在我的系统上。

您知道如何检查问题并找到可能的解决方案吗?

Python版本:Python 2.7.14+

系统:科学 Linux CERN 7

小智 8

在您的情况下,您正在处理的脚本很可能达到了资源量的某个给定限制它能够使用的或者是否有很多打开的文件等?

出现此类错误的最可能原因是超出内存使用量,这会迫使系统在分配更多内存开始失败时不要冒险并中断。也许您可以并行打印您正在使用的总内存,以了解正在发生的情况,因为您提供的信息不足以帮助您:

import os, psutil
process = psutil.Process(os.getpid())
Run Code Online (Sandbox Code Playgroud)

然后:(对于Python 3)

print(process.memory_info().rss) 
Run Code Online (Sandbox Code Playgroud)

或:(对于 python 2.7)(已测试)

print(process.memory_info()[0])
Run Code Online (Sandbox Code Playgroud)