python如何查看内存占用空间

python如何查看内存占用空间,第1张

利用psutil模块,如前正袜果没有直接 pip install psutil

info = psutil.virtual_memory()

print u'内存慧激使用:'清毁,psutil.Process(os.getpid()).memory_info().rss

print u'总内存:',info.total

print u'内存占比:',info.percent

print u'cpu个数:',psutil.cpu_count()

pip install memory_profiler

pip install psutil

pip install matplotlib

使用方法

from memory_profiler import profile

@profile(precision=4, stream=open('test.log', '让咐w+'))

def test(args: List):

...

运行:

python3 test.py

Mem usage:表示执行该行后Python解释器的内存使用情况

Increment:表示当前行宏岁的内存相对于上一行的差异,即自己本身增长了多少,如果减少了则不显坦绝纯示.

看到句柄数这几个字,我猜可能是要windows下运行的?

可能答非所问,不过在linux下最好的用的莫过于psutil了,你可以通过进程名或pid很好的监控任意进程的系统占用情况,甚至进程建立的每个连接都能获取到

>>> import psutil

>>> psutil.pids()

[1, 2, 3, 4, 5, 6, 7, 46, 48, 50, 51, 178, 182, 222, 223, 224,

 268, 1215, 1216, 1220, 1221, 1243, 1244, 1301, 1601, 2237, 2355,

 2637, 2774, 3932, 4176, 4177, 4185, 4187, 4189, 4225, 4243, 4245,

 4263, 4282, 4306, 4311, 4312, 4313, 4314, 4337, 4339, 4357, 4358,

 4363, 4383, 4395, 4408, 4433, 4443, 4445, 4446, 坦橡悄5167, 5234, 5235,

 5252, 5318, 5424, 5644, 6987, 7054, 7055, 7071]

>>>

>>> p = psutil.Process(7055)

>>> p.name()

'python'

>>> p.exe()

'/usr/bin/python'

>>> p.cwd()

'/home/giampaolo'

>>> p.cmdline()

['让渣/usr/bin/python', 'main.py']

>>>

>>> p.status()

'running'

>>> p.cpu_percent(interval=1.0)

12.1

>>> psutil.net_io_counters(pernic=True)

{'eth0': netio(bytes_sent=485291293, bytes_recv=6004858642, packets_sent=3251564, packets_recv=4787798, errin=0, errout=0, dropin=0, dropout=0),

 'lo': netio(bytes_sent=2838627, bytes_recv=2838627, packets_sent=30567, packets_recv=30567, errin=0, errout=0, dropin=0, dropout=0)}

从官方文档上copy了如敬一部分出来,有没有碉堡了的感觉,快去翻一下文档吧,非常容易使用


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12301763.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-24
下一篇 2023-05-24

发表评论

登录后才能评论

评论列表(0条)

保存