使python脚本一次只能运行一次

使python脚本一次只能运行一次,python,Python,可能重复: 我希望使python脚本具有唯一性,因为它一次只能运行一次。例如,如果我运行该脚本并再次打开同一脚本的另一个会话,而第一个会话仍在运行,那么第二个会话将退出而不执行任何操作。有人知道我该如何实现这一点吗 一个穷人的解决方案是使用基于文件的锁。如果使用os.open()打开文件,则会有一个标志允许对该文件进行独占锁定。请参阅以获取参考。以前从未编写过python,但我刚刚在mycheckpoint中实现了这一点,以防止crond启动它两次或更多次: import os import

可能重复:


我希望使python脚本具有唯一性,因为它一次只能运行一次。例如,如果我运行该脚本并再次打开同一脚本的另一个会话,而第一个会话仍在运行,那么第二个会话将退出而不执行任何操作。有人知道我该如何实现这一点吗

一个穷人的解决方案是使用基于文件的锁。如果使用os.open()打开文件,则会有一个标志允许对该文件进行独占锁定。请参阅以获取参考。

以前从未编写过python,但我刚刚在mycheckpoint中实现了这一点,以防止crond启动它两次或更多次:

import os
import sys
import fcntl
fh=0
def run_once():
    global fh
    fh=open(os.path.realpath(__file__),'r')
    try:
        fcntl.flock(fh,fcntl.LOCK_EX|fcntl.LOCK_NB)
    except:
        os._exit(0)

run_once()
已经回答了。