首页 > 系统相关 >唯一进程限制(Python)

唯一进程限制(Python)

时间:2023-07-11 13:57:01浏览次数:45  
标签:exe Python PID 唯一 名称 进程 pids

一、序

在一些条件下,一个设备只需要运行一个进程,Python打包的exe只能运行一次的情况

二、实现思路

获取所有进程,判断是否已经有了该线程。没有输出1,有输出0

三、实现代码

实现代码
    def onlyOneSelf():
      pids = psutil.pids()  # 获取所有进程PID
      list = []  # 空列表用来存储PID名称
      i = 0  # 计数,程序名称出现的次数
      for pid in pids:  # 遍历所有PID进程
          p = psutil.Process(pid)  # 得到每个PID进程信息
          list.append(p.name())  # 将PID名称放入列表
          s = str(p.name())  # 将PID名称转换成字符串进行判断
          if s == "三期实时同步数据.exe":  # “123.exe”你要防多开进程的名称
              i += 1


      if i <= 2:  # 如果这个程序名称在程序管理器中出现次数少于两次,执行以下代码
          # while True:
          #     print("好")
          return 1

      else:  # 这个程序名称在任务管理器中出现两次以上,进行程序关掉
          pidd = os.getpid()  # 获取当前PID名称
          cmd = 'taskkill /pid ' +pidd+ ' /f'  # 输入关闭名称命令
          try:  # 程序防抱死,用try和except
              os.system(cmd)  # 打开系统命令行,将上面的命令导入,即可关掉重复程序
          except Exception as e:
          return 0

标签:exe,Python,PID,唯一,名称,进程,pids
From: https://www.cnblogs.com/wengming/p/17544428.html

相关文章

  • JAVA 和python 多网卡情况下获取正确的IP地址
    要获取内网地址,可以尝试连接到10.255.255.255:1。如果连接成功,获取本地套接字的地址信息就是当前的内网IP。python实现:importsocketdefextract_ip():st=socket.socket(socket.AF_INET,socket.SOCK_DGRAM)try:st.connect(('10.255.255.255',1))......
  • DPI-1047Python的exe无法执行问题
    一、序打包运行的exe在其他设备上出现DPI-1047:Cannotlocatea64-bitOracleClientlibrary:Thespecifiedmodulecouldnotbefound.二、解决方法1、安装OracleInstantClient2、配置系统环境Path中添加解压路径如(C:\Users\Administrator\Desktop\instantclient......
  • java如何调用python.py文件并传参
    注意:java调用python.py文件并传参,在windows和linux中使用是不一样的我在windows操作系统中,java调用python文件并传参,是这样写的:完全没问题try{IntegertotalTestCaseCount=0;//传入python文件的参数:StringxmindFilePath,StringtestCaseKeyWo......
  • python setup.py sdist bdist_wheel
    #pythonsetup.pysdistbdist_wheel#twineuploaddist/*importioimportosimportsysfromshutilimportrmtreefromsetuptoolsimportfind_packages,setup,CommandNAME='xgo-pythonlib'DESCRIPTION='PythonLibforXGO2-DOG'URL='h......
  • Python核对批量下载多个文件时的下载情况
      本文介绍批量下载遥感影像时,利用Python实现已下载影像文件的核对,并自动生成未下载影像的下载链接列表的方法。  批量下载大量遥感影像数据对于GIS学生与从业人员可谓十分常见。然而,对于动辄成千上万景的遥感影像文件,下载过程中可能会出现各类失败问题,且或许在下载软件或工具......
  • python pandas链接mysql数据库报错
    1. ModuleNotFoundError:Nomodulenamed'mysql'需要安装链接驱动,比如 pipinstallmysqlclient#或pipinstallpymysql#或pipinstallmysql-connector-python2.pandas的 pd.read_sql(ad_first_query,conn)报错: executereturnself.connectable.executio......
  • Windows版python安装教程
    Windows版python安装教程第一步:下载Python最新版本Python官网:http://www.python.org进入官网之后,根据电脑系统选择合适的版本下载安装。截止到目前为止,python-3.10.2是Python最新版本(此版本Windows7系统及更早系统无法使用,Windows7系统的小伙伴可以选择下载python-3.8.10)。第......
  • Python - 打断点以及如何查看
    1、鼠标左键单击代码跟行号中间的地方会出现一个红点,这个就是断点。2、点击Debug按钮,进入调试模式。 3、当代码运行到断点之前,所有关于变量的代码,都会出现运行的结果。 4、点击StepIntoMyCode按钮,代码一步一步查看断点之后的内容。 5、最后:如果不想要继续查看断点......
  • 解决Python 画图 默认字体大小的具体操作步骤
    Python画图默认字体大小概述在Python中画图时,默认使用的字体大小可能不符合我们的需求,因此需要对字体大小进行调整。本文将介绍如何使用Python来实现画图时的默认字体大小,并提供详细的代码示例和解释。步骤下面是实现“Python画图默认字体大小”的步骤:步骤操作......
  • 如何实现Python 函数的参数的具体操作步骤
    Python函数的参数在Python中,函数是一种可重复使用的代码块,用于执行特定的任务。函数可以接受参数,参数是函数中用于接受输入值的变量。Python中的函数参数非常灵活,可以有多种形式。本文将介绍Python函数参数的不同类型以及它们的使用方法。位置参数位置参数是指根据参数的......