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 模板引擎的注入问题分析
Jan 01 Python
Python实现按学生年龄排序的实际问题详解
Aug 29 Python
python生成器,可迭代对象,迭代器区别和联系
Feb 04 Python
tensorflow实现softma识别MNIST
Mar 12 Python
实例讲解Python3中abs()函数
Feb 19 Python
python获取地震信息 微信实时推送
Jun 18 Python
python生成器推导式用法简单示例
Oct 08 Python
Python 转换RGB颜色值的示例代码
Oct 13 Python
Python模块/包/库安装的六种方法及区别
Feb 24 Python
pygame实现飞机大战
Mar 11 Python
keras:model.compile损失函数的用法
Jul 01 Python
python 实现音频叠加的示例
Oct 29 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
微博短链接算法php版本实现代码
2012/09/15 PHP
基于PHP静态类的原罪详解
2013/05/06 PHP
深入浅出php socket编程
2015/05/13 PHP
Yii框架的布局文件实例分析
2019/09/04 PHP
laravel5.6框架操作数据curd写法(查询构建器)实例分析
2020/01/26 PHP
javascript 解决表单仍然提交即使监听处理函数返回false
2010/03/14 Javascript
javascript 验证日期的函数
2010/03/18 Javascript
Jquery 获得服务器控件值的方法小结
2010/05/11 Javascript
多浏览器兼容性比较好的复制到剪贴板的js代码
2011/10/09 Javascript
javascript实现日历控件(年月日关闭按钮)
2012/12/12 Javascript
js中的referrer返回上一页使用介绍
2013/09/26 Javascript
jquery $.fn $.fx是什么意思有什么用
2013/11/04 Javascript
javascript实现五星评分功能
2015/11/10 Javascript
Bootstrap实现下拉菜单效果
2016/04/29 Javascript
js获取Html元素的实际宽度高度的方法
2016/05/19 Javascript
JavaScript实现时钟滴答声效果
2017/01/29 Javascript
ionic+AngularJs实现获取验证码倒计时按钮
2017/04/22 Javascript
js限制input只能输入有效的数字(第一个不能是小数点)
2018/09/28 Javascript
Python字符串转换成浮点数函数分享
2015/07/24 Python
Django 导出 Excel 代码的实例详解
2017/08/11 Python
python如何读写json数据
2018/03/21 Python
python pyenv多版本管理工具的使用
2019/12/23 Python
使用python批量修改XML文件中图像的depth值
2020/07/22 Python
神路信息Java面试题目
2013/03/31 面试题
利用指针变量实现队列的入队操作
2012/04/07 面试题
介绍一下木马病毒的种类
2015/07/26 面试题
AJAX应用和传统Web应用有什么不同
2013/08/24 面试题
业务经理岗位职责
2013/11/11 职场文书
应届毕业生求职信范文分享
2013/12/26 职场文书
激励员工的口号
2014/06/16 职场文书
学校端午节活动方案
2014/08/23 职场文书
2015年试用期自我评价范文
2015/03/10 职场文书
我的法兰西岁月观后感
2015/06/09 职场文书
幼儿园见习总结
2015/06/23 职场文书
高三生物教学反思
2016/02/22 职场文书
html5移动端禁止长按图片保存的实现
2021/04/20 HTML / CSS