python判断自身是否正在运行的方法
如下所示:
#coding:utf-8 importos importpsutil importtime defwrite_pid(): pid=os.getpid() fp=open("pid.log",'w') fp.write(str(pid)) fp.close() defread_pid(): ifos.path.exists("pid.log"): fp=open("pid.log",'r') pid=fp.read() fp.close() returnpid else: returnFalse defwrite_log(log_content): time_now=time.strftime("%Y-%m-%d%H:%M:%S",time.localtime()) log_content=time_now+"---->"+log_content+os.linesep fp=open('recognition.log','a+') fp.write(log_content) fp.close() defrun(): pid=read_pid() #printpid pid=int(pid) ifpid: running_pid=psutil.pids() ifpidinrunning_pid: log_content="processisrunning..." write_log(log_content) else: write_pid() time.sleep(20) else: write_pid() time.sleep(20) if__name__=="__main__": run()
实现思路:
1)用os.getpid()获取当前程序运行PID,将PID存入文件中
2)用psutil模块获取当前系统所有正在运行的pid
3)读取之前存入的PID,判断该PID是否在系统PID中
4)如果文件中的PID在系统PID中,则退出程序,否则存入新的PID,运行程序。
以上这篇python判断自身是否正在运行的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持毛票票。