অবশ্যই ড্যানের উদাহরণটি যেমনটি হওয়া উচিত তেমন কাজ করবে না।
প্রকৃতপক্ষে, যদি স্ক্রিপ্টটি ক্রাশ হয়, একটি ব্যতিক্রম উত্থাপন করে, বা পিড ফাইলটি পরিষ্কার না করে, স্ক্রিপ্টটি একাধিকবার চালানো হবে।
আমি অন্য ওয়েবসাইট থেকে নিম্নলিখিত ভিত্তিক প্রস্তাব:
এটি ইতিমধ্যে কোনও লক ফাইল বিদ্যমান কিনা তা পরীক্ষা করতে হবে
\
import os
import sys
if os.access(os.path.expanduser("~/.lockfile.vestibular.lock"), os.F_OK):
pidfile = open(os.path.expanduser("~/.lockfile.vestibular.lock"), "r")
pidfile.seek(0)
old_pid = pidfile.readline()
if os.path.exists("/proc/%s" % old_pid):
print "You already have an instance of the program running"
print "It is running as process %s," % old_pid
sys.exit(1)
else:
print "File is there but the program is not running"
print "Removing lock file for the: %s as it can be there because of the program last time it was run" % old_pid
os.remove(os.path.expanduser("~/.lockfile.vestibular.lock"))
এটি কোডের একটি অংশ যেখানে আমরা লক ফাইলে একটি পিআইডি ফাইল রাখি
pidfile = open(os.path.expanduser("~/.lockfile.vestibular.lock"), "w")
pidfile.write("%s" % os.getpid())
pidfile.close()
এই কোডটি চলমান চলমান প্রক্রিয়ার তুলনায় পিডের মান পরীক্ষা করবে,
আমি আশা করি এটি সাহায্য করবে