python统计cpu的利用率,pythoncpu利用率,#-*-coding=u
文章由Byrx.net分享于2019-03-23 10:03:13
python统计cpu的利用率,pythoncpu利用率,#-*-coding=u
#-*-coding=utf-8-*-import win32pdhimport time# Counter pathsPROCESSOR_PERCENT = r'\Processor(_Total)\% Processor Time'MEMORY_PERCENT = r'\Memory\% Committed Bytes In Use'MEMORY_COMMITTED = r'\Memory\Committed Bytes'PROCESS_BYTES = lambda x: r'\Process(%s)\Private Bytes' % xclass Query: def __init__(self): self.counters = {} self.query = None self.query = win32pdh.OpenQuery(None, 0) def add_counter(self, path): if win32pdh.ValidatePath(path) != 0: raise Exception('Invalid path: %s' % path) counter = win32pdh.AddCounter(self.query, path, 0) self.counters[path] = counter def remove_counter(self, path): win32pdh.RemoveCounter(self.counters[path]) del self.counters[path] def get_values(self): values = {} win32pdh.CollectQueryData(self.query) for path in self.counters: status, value = win32pdh.GetFormattedCounterValue( self.counters[path], win32pdh.PDH_FMT_LONG) values[path] = value return valuessysinfo_query = Query()sysinfo_query.add_counter(PROCESSOR_PERCENT)sysinfo_query.add_counter(MEMORY_PERCENT)sysinfo_query.get_values()def get_sysinfo(): """Return a tuple (mem_usage, cpu_usage).""" info = sysinfo_query.get_values() return info[MEMORY_PERCENT], info[PROCESSOR_PERCENT]listcpu=[]while True: time.sleep(2) x,y=get_sysinfo() listcpu.append(y) if len(listcpu)==10: icount=0 for c in listcpu: if c>4: icount+=1 if icount>5: print "在统计的1分钟内,cpu已经有5次大于4%" listcpu=[] print y
相关内容
- python通过xmlrpc进行远程调用的范例演示,pythonxmlrpc,服务
- python通过ssh-powershell监控windows,,#! /usr/bin/
- python 操作 ssh,pythonssh,#coding:utf-
- python下paramiko模块ssh登录,paramikossh,#!/usr/bin/e
- python实现ssh批量登录并执行命令,pythonssh执行命令,#!
- python ftplib模块制作ftp客户端,pythonftplib,#!/usr/bin/p
- 用Python实现的"石头,剪刀,布",Pyt
- python的threading和multiprocessing模块,,前言 这两天为了做
- Python中*args 和**kwargs的用法,pythonkwargs,def fun_var_
- Python 判断文件和文件夹是否存在,,import osos.
评论关闭