python判断自身是否正在运行的方法


Posted in Python onAugust 08, 2019

如下所示:

# coding: utf-8
import os
import psutil
import time
 
def write_pid():
 pid = os.getpid()
 fp = open("pid.log",'w')
 fp.write(str(pid))
 fp.close()
 
def read_pid():
 if os.path.exists("pid.log"):
  fp = open("pid.log",'r')
  pid = fp.read()
  fp.close()
  return pid
 else:
  return False
 
def write_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()
 
def run():
 pid = read_pid()
 #print pid
 pid = int(pid)
 if pid:
  running_pid = psutil.pids()
  if pid in running_pid:
   log_content = "process is running..."
   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判断自身是否正在运行的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python的组合模式与责任链模式编程示例
Feb 02 Python
python 中if else 语句的作用及示例代码
Mar 05 Python
python如何实现一个刷网页小程序
Nov 27 Python
Python 判断图像是否读取成功的方法
Jan 26 Python
详解Python计算机视觉 图像扭曲(仿射扭曲)
Mar 27 Python
django框架cookie和session用法实例详解
Dec 10 Python
Python3 获取文件属性的方式(时间、大小等)
Mar 12 Python
Pyqt5 关于流式布局和滚动条的综合使用示例代码
Mar 24 Python
如何利用Python识别图片中的文字
May 31 Python
彻底搞懂python 迭代器和生成器
Sep 07 Python
python geopandas读取、创建shapefile文件的方法
Jun 29 Python
python 使用pandas读取csv文件的方法
Dec 24 Python
Python 日期区间处理 (本周本月上周上月...)
Aug 08 #Python
python各类经纬度转换的实例代码
Aug 08 #Python
Python3.0 实现决策树算法的流程
Aug 08 #Python
Python使用ffmpy将amr格式的音频转化为mp3格式的例子
Aug 08 #Python
Django rest framework jwt的使用方法详解
Aug 08 #Python
使用Python实现文字转语音并生成wav文件的例子
Aug 08 #Python
django基于restframework的CBV封装详解
Aug 08 #Python
You might like
PHP5.0正式发布 不完全兼容PHP4 新增多项功能
2006/10/09 PHP
php 设计模式之 单例模式
2008/12/19 PHP
Smarty中常用变量操作符汇总
2014/10/27 PHP
php实现专业获取网站SEO信息类实例
2015/04/02 PHP
Windows下Apache + PHP SESSION丢失的解决过程全纪录
2015/04/07 PHP
tp5(thinkPHP5框架)captcha验证码配置及验证操作示例
2019/05/28 PHP
理解Javascript_06_理解对象的创建过程
2010/10/15 Javascript
javascript实现切换td中的值
2014/12/05 Javascript
JavaScript电子时钟倒计时
2016/01/09 Javascript
AngularJS基础 ng-repeat 指令简单示例
2016/08/03 Javascript
jQuery实现ajax的叠加和停止(终止ajax请求)
2016/08/08 Javascript
JS实现Ajax的方法分析
2016/12/20 Javascript
详解nvm管理多版本node踩坑
2019/07/26 Javascript
浅谈nuxtjs校验登录中间件和混入(mixin)
2020/11/06 Javascript
Python语言实现获取主机名根据端口杀死进程
2016/03/31 Python
详解使用python的logging模块在stdout输出的两种方法
2017/05/17 Python
Python实现多进程共享数据的方法分析
2017/12/04 Python
Python2/3中urllib库的一些常见用法
2017/12/19 Python
Python实现爬取亚马逊数据并打印出Excel文件操作示例
2019/05/16 Python
python中用logging实现日志滚动和过期日志删除功能
2019/08/20 Python
sklearn+python:线性回归案例
2020/02/24 Python
高考考python编程是真的吗
2020/07/20 Python
优衣库英国官网:UNIQLO英国
2016/12/25 全球购物
美国高端医师级美容产品电商:BeautifiedYou.com
2017/04/17 全球购物
FitFlop美国官网:英国符合人体工学的鞋类品牌
2018/10/05 全球购物
PHP如何防止SQL注入
2014/05/03 面试题
Windows和Linux动态库应用异同
2016/04/17 面试题
交通法规咨询中心工作职责
2013/11/27 职场文书
道德模范先进事迹
2014/02/14 职场文书
党员应该树立反腐倡廉的坚定意识思想汇报
2014/09/12 职场文书
业务员岗位职责
2015/02/03 职场文书
科技活动总结范文
2015/05/11 职场文书
《颐和园》教学反思
2016/02/19 职场文书
java调用Restful接口的三种方法
2021/08/23 Java/Android
浅谈MySql update会锁定哪些范围的数据
2022/06/25 MySQL
AndroidStudio图片压缩工具ImgCompressPlugin使用实例
2022/08/05 Java/Android