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 时间戳与格式化时间的转化实现代码
Mar 23 Python
Python 备份程序代码实现
Mar 06 Python
详解python3中的真值测试
Aug 13 Python
Python基于OpenCV库Adaboost实现人脸识别功能详解
Aug 25 Python
Python实现的读取文件内容并写入其他文件操作示例
Apr 09 Python
Pytorch加载部分预训练模型的参数实例
Aug 18 Python
解决Python3用PIL的ImageFont输出中文乱码的问题
Aug 22 Python
Python 写了个新型冠状病毒疫情传播模拟程序
Feb 14 Python
python代码实现TSNE降维数据可视化教程
Feb 28 Python
PyQt5 如何让界面和逻辑分离的方法
Mar 24 Python
基于Python计算圆周率pi代码实例
Mar 25 Python
基于Python实现股票收益率分析
Apr 02 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&MYSQL服务器配置说明
2006/10/09 PHP
PHP获取中英混合字符串长度的方法
2014/06/07 PHP
PHP会话处理的10个函数
2015/08/11 PHP
php生成word并下载代码实例
2019/03/15 PHP
使用PHP开发留言板功能
2019/11/19 PHP
JavaScript入门教程(12) js对象化编程
2009/01/31 Javascript
jQuery 加上最后自己的验证
2009/11/04 Javascript
JS getStyle获取最终样式函数代码
2010/04/01 Javascript
jQuery boxy弹出层插件中文演示及使用讲解
2011/02/24 Javascript
js当一个变量为函数时 应该注意的一点细节小结
2011/12/29 Javascript
js使浏览器窗口最大化实现代码(适用于IE)
2013/08/07 Javascript
JS封装的三级联动菜单(使用时只需要一行js代码)
2016/10/24 Javascript
详解Vue.js动态绑定class
2016/12/20 Javascript
JS判断时间段的实现代码
2017/06/14 Javascript
JS操作时间 - UNIX时间戳的简单介绍(必看篇)
2017/08/16 Javascript
JavaScript中防止微信浏览器被整体拖动的方法
2017/08/25 Javascript
javascript判断一个变量是数组还是对象
2019/04/10 Javascript
vue实现在v-html的html字符串中绑定事件
2019/10/28 Javascript
Python中表示字符串的三种方法
2017/09/06 Python
Python3.4 tkinter,PIL图片转换
2018/06/21 Python
python tornado微信开发入门代码
2018/08/24 Python
使用python PIL库实现简单验证码的去噪方法步骤
2019/05/10 Python
opencv+python实现均值滤波
2020/02/19 Python
马来西亚演唱会订票网站:StubHub马来西亚
2018/10/18 全球购物
澳大利亚窗帘商店:Curtain Wonderland
2019/12/01 全球购物
乌克兰数字设备、配件和智能技术的连锁商店:KTC
2020/08/18 全球购物
结婚保证书范文
2014/04/29 职场文书
奥巴马连任演讲稿
2014/05/15 职场文书
目标责任书格式
2014/07/28 职场文书
租房协议书范文
2014/08/20 职场文书
科学发展观演讲稿
2014/09/11 职场文书
2014标准社保办理委托书
2014/10/06 职场文书
2014年领班工作总结
2014/11/25 职场文书
停电放假通知
2015/04/14 职场文书
工作失职自我检讨书
2015/05/05 职场文书
《孙子兵法》:欲成大事者,需读懂这些致胜策略
2019/08/23 职场文书