停止任何程序运行两次

停止任何程序运行两次

是否有人知道一个程序,您可以通过管道传输路径和参数,首先检查程序是否正在运行,如果是,则将其置于前台而不是运行两次?

答案1

这种行为确实应该使用互斥锁内置到程序本身中。可以使用相当简单的看门狗程序来实现,但我不知道有预建的看门狗程序。您还需要注意,并非所有程序都能很好地运行,因此不能保证该方法适用于所有程序。

答案2

Firefox 几乎就是这样的——当您尝试启动另一个实例时,它会尝试从正在运行的实例打开一个新窗口。当您通过 ssh 连接到工作站并想运行新的 Firefox 而不是在(无法访问的)桌面上打开一个新窗口时,这特别令人讨厌。

这些检测技巧是在 Firefox 启动器脚本中完成的——执行哪个 Firefox并开始咀嚼。

哦,您也可以在 Stack Overflow 上询问。

相关内容