问题:运行python程序的时候,在100轮以后时间从初始的3S一次,慢慢变为1分钟一次,越来越慢。
处理方法:查询资料得,这种问题的出现基本是由于程序内存泄漏。所以需要监测内存占用情况。
监测内存需要: memory_profiler 与 psutil
1. pip install memory_profiler pip install psutil
2. 在需要监测的程序前放入装饰器, 更多用法见memory_profiler的文档: https://pypi.org/project/memory-profiler/
例:
from memory_profiler import profile
@profile
def my_func():
a = [1] * (10 ** 6)
b = [2] * (2 * 10 ** 7)
del b
return a
3. 运行 python -m memory_profiler test.py
就会出现如下结果:
Line # Mem usage Increment Line Contents
======================