我需要找到一种正确的方法来阻止我的(Python)程序的两个运行实例。我目前正在使用以下方法。
在 Windows 上,
os.popen('wmic process get caption,processid | findstr `programname.exe`')
在 Linux 上,
os.popen('ps x | grep `programname`')
它现在似乎工作正常。这种方法正确吗?有人可以向我建议更好的方法吗?
编辑:谢谢大家的回复,上面的方法有什么问题吗?我尝试了linux的pid文件方式。如果 pid 文件以某种方式被删除了怎么办?