如果我有一个用Java编写的带有swing或applet的桌面应用程序,它们安装在Windows或Unix的任何操作系统桌面上。 现在如果有任何用户第一次打开(比如双击Windows桌面上的桌面快捷方式)那么它应该打开第一个窗口,但是当用户第二次尝试打开相同的应用程序时,它应该填充相同的窗口意味着它不应该第二次打开其他窗户。 示例:像Outlook在桌面上工作。 如何使用纯核java实现这一点而不使用任何配置文件和数据库配置?
答案 0 :(得分:2)
你必须使用文件系统,并维护一个锁文件,或使用一些IPC机制(可能通过绑定本地端口滥用网络堆栈?)如果你想让第一个实例知道第二个实例,您还需要进行IPC通信以促进这一点。不同的java实例在不同的JVM中运行,而Windows应用程序通过OS提供的机制(实例句柄)完成该功能。