【问题标题】:How do I stop a second instance of my application from executing if one is already running in JAVA? [duplicate]如果我的应用程序的第二个实例已经在 J​​AVA 中运行,我该如何阻止它的执行? [复制]
【发布时间】:2014-03-28 22:37:16
【问题描述】:

当我使用 .jar 文件运行我的应用程序时,会显示 GUI,并且 javaw.exe 会显示在任务管理器的系统进程中。但是,当我再次运行 .jar 文件而不关闭第一个文件时,会启动第二个 javaw.exe 进程并显示第二个 GUI。我该如何阻止这个?无论我运行 .jar 文件多少次,我都希望我的应用程序一次只有一个实例。

【问题讨论】:

    标签: java javaw


    【解决方案1】:

    有几个解决方案here

    但请注意,如果您担心同一台机器上的其他设备可能正在使用同一端口,则需要修改套接字解决方案。

    【讨论】:

      【解决方案2】:

      一种简单的方法是在固定端口号上打开一个套接字。操作系统将强制只有一个进程可以执行此操作。

      【讨论】:

        【解决方案3】:

        在文件中注册一个值,可能是最简单的解决方案。

        【讨论】:

        • 如果程序崩溃,你将如何重新启动应用程序?
        猜你喜欢
        • 1970-01-01
        • 2011-09-30
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2016-07-11
        • 1970-01-01
        相关资源
        最近更新 更多