2017-10-19 61 views
0

我有每两分钟运行一个进程的jar文件。它可以很好地工作,但如果有人关闭了终端,程序将被终止。我正在寻找一种将其作为后台进程执行的方式。这是我的主:在后台运行Java ScheduledExecutorService

public class SMSAlert { 

    private static ScheduledExecutorService scheduler; 

    /** 
    * @param args the command line arguments 
    */ 
    public static void main(String[] args) { 
     scheduler = Executors.newSingleThreadScheduledExecutor(); 
     Alert alert = new Alert(); 
     scheduler.scheduleAtFixedRate(alert, 0, 2, TimeUnit.MINUTES); 
    } 

} 
+1

这听起来更像是一个操作系统问题,而不是编程问题。你在使用什么操作系统? –

+0

它对Linux mint和Windows都是一样的。 – ErrorNotFoundException

回答

0

在Linux上,您可避免使用screen命令“闭合端子杀死进程的问题。这将该过程从受到终端发生的事情影响的过程中分离出来。

解决您的问题的另一种方法是通过Cron运行您的应用程序。再次,这使得它的执行独立于任何特定的终端会话。