python内存相关

Posted 匡子语

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python内存相关相关的知识,希望对你有一定的参考价值。

1.  /proc/pid/status

可以查看进程相关的详细信息,当内存异常时可查看

参考:http://blog.csdn.net/beckdon/article/details/48491909

 

2. top -p 进程号

实时查看进程相关内存

 

3. 内存调试

参考:http://blog.csdn.net/ybdesire/article/details/73128353

memory_profiler  查看函数中各行代码的内存增长

guppy  查看python对象占用的堆内存大小

 

4. 查看变量引用计数

import sys 
sys.getrefcount(变量名) 

 

5. 强制回收变量

del 变量名  

gc.collect()

注意:上述代码只能让python回收内存,但是python底层的libc和os如果不释放内存的话,内存空间还是占用的。对于大变量,最好循环处理,不要一次性读入内存,防止一下子占用过大内存后无法及时回收。

http://blog.csdn.net/nirendao/article/details/44426201/  中对del 和 gc.collet的效果做了测试,里面说如果使用gc.collect(),在内存快要耗尽时,回收机制会起作用。具体需要试验。

 


以上是关于python内存相关的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Windows 上使用 64 位 Python 调试(可能与 C 库相关的)内存问题?

Python入门自学进阶-Web框架——20Django其他相关知识2

python之路_redis相关介绍

Python入门自学进阶-Web框架——20Django其他相关知识2

python之闭包函数及相关内容

python装饰器原理及相关操作