如何使Java程序退出几秒钟后,(How to make Java program exit aft

2019-08-18 16:35发布

反正是有,我可以退出Java程序之后几秒钟例如5秒。

我知道你可以退出使用java程序:

System.exit(0);

但我不知道是否0表示由于该代码秒:

System.exit(10);

也立即退出

Answer 1:

System.exit(0)指定该程序的退出错误代码。

你可以把它放在一个计时器,并安排任务

import java.util.Date;
import java.util.Timer;
import java.util.TimerTask;

public class TimedExit {
Timer timer = new Timer();
TimerTask exitApp = new TimerTask() {
public void run() {
    System.exit(0);
    }
};

public TimedExit() {
timer.schedule(exitApp, new Date(System.currentTimeMillis()+5*1000));
    }

}

然后你可以叫TimedExit()



Answer 2:

您可以调用Thread.sleep()退出程序之前:

// Your code goes here.

try 
{
   Thread.sleep(5000);
} 
catch (InterruptedException e) 
{
   // log the exception.
}

System.exit(0);


Answer 3:

从System.exit(INT)方法文档:

终止当前运行的Java虚拟机。 参数用作一个状态代码; 按照惯例,非零的状态码表示异常终止。

如果您需要在时间等待退出执行的东西,你可以创建一个控制线程,这将只是等待执行这样的出口正确的时间:

public class ExitFewMiliseconds {

    public static void main(String args[]) {

        new Thread(new Runnable() {
            public void run() {
                try {
                    Thread.sleep(100);
                } catch (InterruptedException e) {
                    e.printStackTrace();
                }
                System.exit(0);
            }
        }).start();

        while (true) {
            System.out.println("I'm doing something");
        }
    }

}

如果没有应等待退出来执行,你可以简单地使用了Thread.sleep(毫秒)



Answer 4:

你进入System.exit(0)0无关用多久会退出前等待。 的Javadoc是你的朋友 。 根据JavaDoc:

参数用作一个状态代码; 按照惯例,非零的状态码表示异常终止。

其他答案已经介绍如何退出,如果你真的需要做的是等待5秒钟之后。



Answer 5:

import java.util.Timer;
import java.util.TimerTask;

/**
 * Simple demo that uses java.util.Timer to schedule a task 
 * to execute once 5 seconds have passed.
 */
class Reminder {

    Timer timer;

    public Reminder(int seconds) {
        timer = new Timer();
        timer.schedule(new RemindTask(), seconds * 1000);
    }

    class RemindTask extends TimerTask {
        public void run() {
            System.out.format("Time's up!%n");
            System.exit();
            timer.cancel(); //Terminate the timer thread
        }
    }

    public static void main(String args[]) {
        new Reminder(10);
        System.out.format("Task scheduled.%n");
    }
}

通过这种方式,你可以使用Timer类和特定的时间间隔后退出系统



文章来源: How to make Java program exit after a couple of seconds