python psutil监控进程实例
我就废话不多说了,直接上代码吧!
importpsutil
importsubprocess
importos
fromos.pathimportjoin,getsize
importre
importtime
fromsubprocessimportPIPE
counter=0
filesize_last=0
defrestart_process():
haspro=0
all_process_name=psutil.pids();
forpidinall_process_name:
pro=psutil.Process(pid)
print("process_name:",pro.name());
if():
pass
if(pro.name()=="test_tdb.exe"):
haspro=haspro+1
pro.kill()
os.popen("E:/data/tdb/code/test_tdb.exe")
break
if(haspro==0):
os.popen("E:/data/tdb/code/test_tdb.exe")
#time.sleep(5)
while(counter>=0):
filesize=getsize(r"e:\log.csv")
if(counter>0):
if(filesize==filesize_last):
print("EQUAL!")
restart_process()
counter=0
if(filesize!=filesize_last):
print("NOTEQUAL!")
counter=0
pass
if(counter==0):
filesize_last=filesize
counter=counter+1
time.sleep(300)
#p=subprocess.Popen('D:/project/server/bin/Debug/test_tdb.exe',shell=True,stdout=subprocess.PIPE,stderr=subprocess.STDOUT);
#returncode=p.poll()
#whilereturncodeisNone:
#line=p.stdout.readline()
#returncode=p.poll()
#line=line.strip()
#print('line:',line);
#print('returncode:',returncode);
#if(line==b'Couldnotcreatelogfile:Nosuchfileordirectory'):
#pass
#os.popen("D:/project/server/bin/Debug/test_tdb.exe",'r',-1)
#os.system('D:/project/server/bin/Debug/test_tdb.exe')
#p1=psutil.Popen(["D:/project/server/bin/Debug/test_tdb.exe"],stdout=PIPE)
#process_list=psutil.get_process_list()
#print("process_list:",process_list);
#all_process_name=psutil.pids();
#print("all_process_name=",all_process_name);
#forpidinall_process_name:
#pro=psutil.Process(pid);
#if(counter==0):
#print('Thereare%.2f'%(filesize/1024),'Kb')
#
#if(pro.name()=="test_tdb.exe"):
#counter=counter+1
#pro.kill();
#os.popen("D:/project/server/bin/Debug/test_tdb.exe")
#time.sleep(5);
以上这篇pythonpsutil监控进程实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持毛票票。
声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:czq8825#qq.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。