нельзя было запустить, если он уже запущен?
Обычно для этого используется некий дополнительный флаг. Например при запуске создавать файл, при выходе удалять, а если при запуске он уже существует, то не запускаться
from subprocess import call def run_checker(filename): """ Checks if script allready running at shell. If not, set __file__ to filename Args: filename - name of running process Return: filename """ master_pid = call(['pgrep', '-f', filename]) if (master_pid != 1): print(f"Этот скрипт уже запущен. Pid: {master_pid}\n") exit() return filename if __name__ == "__main__": __file__ = run_checker('PythonCode')
singleton pattern?
Обсуждают сегодня