python程序内存分析器

概述

Memory_profiler是一个Python模块,可以监视一个进程的内存消耗,甚至可以一行一行的分析Python程序的内存消耗。

实例1

用@profile修饰你需要监视的函数(如果函数在类里用:@profile(precision=4))

@profile
def func():
    a = [1] * (2 ** 8)
    b = [2] * (2 ** 10)
    del b
    return a

if __name__ == '__main__':
    func()

运行脚本时需传入-m memory_profiler参数

python -m memory_profiler example.py

实例2

导入模块会实时输出

from memory_profiler import profile
import time
@profile
def func():
    a = [1] * (2 ** 8)
    b = [2] * (2 ** 10)
    del b
    return a

if __name__ == '__main__':
    while True:
        func()
        time.sleep(1)

运行脚本时需传入-m memory_profiler参数

python example.py

memory_profiler工具下载地址

安装:python setup.py install

你可能感兴趣的:(Python篇)