margaretmm / myblog

my tech blog
0 stars 1 forks source link

windows 按照进程名统计进程信息样例 #10

Open margaretmm opened 6 years ago

margaretmm commented 6 years ago

-------------win_getThreadCountByPname.py-------------------------

!/usr/bin/env python

-- coding: utf-8 --

from imp import reload

import psutil import sys

def get_threadCount(PID): reload(sys)

传入进程PID,实现监测功能

process = psutil.Process(int(PID)) numThreads = process.num_threads()

print(process.name())

return numThreads

def processinfo(processName): pids = psutil.pids() #获取主机所有的PID

count = 1

pids_out=[] for pid in pids: #对所有PID进行循环 p = psutil.Process(pid) #实例化进程对象 if p.name() == processName: #判断实例进程名与输入的进程名是否一致(判断进程是否存活)

print(a) #返回1,进程存活

count += 1

pids_out.append(pid) return pids_out

def getThreadCountByPname(pName): pids=processinfo(pName) count=0 for pid in pids: count+=get_threadCount(pid) return count

if name == 'main': print(getThreadCountByPname(sys.argv[1]))