如何用 Java 为整台计算机创建一个真正的单例?
我有一个用 Java 编写的控制台应用程序。如果应用程序第二次执行,我希望它知道主应用程序已经在运行(并正在执行作业)。第二次执行将只允许用户查询数据(作业)。我知道我可以创建一个文件并将所有内容写入其中,但是我还必须支持计算机重置等。
有更好的方法吗?
总结一下:
- 我启动应用程序。它有作业并以想要的间隔执行它们。
- 我第二次启动应用程序。我收到作业已经在运行的消息,我可以从第一个应用程序查询数据。
- 第三次启动应用程序,它的工作方式与第二次相同。
- 如果我停止第一个实例并启动一个新实例,它就像第一个实例一样工作。
PS 我确实知道这个问题一定被问过不止一次,但谷歌和 StackOverflow 搜索只给我与单例设计模式相关的链接。