python脚本在window2012R2上获取CPU使用率,得到的使用率和任务管理器显示的不一样?
尝试了直接用网上的,发现获取到的数据和我获取到的是一样的。与任务管理器显示的不一样。
代码:
#!/usr/bin/env python
# -*- coding: utf-8 -*-
import wmi
import os
import sys
import platform
import time
def cpu_use():
#5s取一次CPU的使用率
c = wmi.WMI()
while True:
for cpu in c.Win32_Processor():
timestamp = time.strftime('%a, %d %b %Y %H:%M:%S', time.localtime())
print '%s | Utilization: %s: %d %%' % (timestamp, cpu.DeviceID, cpu.LoadPercentage)
time.sleep(5)
if __name__ == '__main__':
cpu_use()
结果显示 :
C:\Users\Administrator\Desktop>python test.py
Mon, 14 Nov 2016 17:13:34 | Utilization: CPU0: 1 %
Mon, 14 Nov 2016 17:13:39 | Utilization: CPU1: 100 %
Mon, 14 Nov 2016 17:13:46 | Utilization: CPU0: 1 %
Mon, 14 Nov 2016 17:13:51 | Utilization: CPU1: 100 %
Mon, 14 Nov 2016 17:13:58 | Utilization: CPU0: 1 %
Mon, 14 Nov 2016 17:14:03 | Utilization: CPU1: 100 %
Mon, 14 Nov 2016 17:14:10 | Utilization: CPU0: 1 %
Mon, 14 Nov 2016 17:14:15 | Utilization: CPU1: 100 %
Mon, 14 Nov 2016 17:14:23 | Utilization: CPU0: 1 %
任务管理器显示CPU 使用率在3%-4%跳动