Python实现保证只能运行一个脚本实例,一起看看吧!

来源:网络时间:2018-02-13 10:10:47

  这篇文章主要介绍了Python实现保证只能运行一个脚本实例,本文直接给出实现代码,需要的朋友可以参考下

 Python实现保证只能运行一个脚本实例,一起看看吧!

  保证只能运行一个脚本实例,方法是程序运行时监听一个特定端口,如果失败则说明已经有实例在跑。  使用装饰器实现,便于重用  代码如下:  import functools  def just_one_instance(func):  '''  装饰器  如果已经有实例在跑则退出  复制代码 代码如下:  :return:  '''  @functools.wraps(func)  def f(*args,**kwargs):  import socket  try:  # 全局属性,否则变量会在方法退出后被销毁  global s  s = socket.socket()  host = socket.gethostname()  s.bind((host, 60123))  except:  print('already has an instance')  return None  return func(*args,**kwargs)  return f  [code]  在脚本的主函数上使用:  [code]  @just_one_instance  main():  do sth.

文章内容来源于网络,不代表本站立场,若侵犯到您的权益,可联系我们删除。(本站为非盈利性质网站) 联系邮箱:rjfawu@163.com