与java相关的问题

时间:2011-04-09 09:29:32

标签: java

您能否建议如何在Java中使用until命令,实际上我必须在当前系统时间3秒后执行此System.exit(0);。所以我想通过long time=System.currentTimeMillis();

来做
until(System.currentTimeMillis()<(time+3000))
{
    System.exit(0);
}

但它报告错误

3 个答案:

答案 0 :(得分:4)

实际上java没有until命令,但你应该使用while循环或do-while循环。

注意:Thread.sleep(3000);是一种更好的睡眠方式,持续三秒钟。

答案 1 :(得分:2)

我可能误解了你的要求但是如果你只想等待3秒然后调用System.exit(0),你可以使用:

Thread.sleep(3000);
System.exit(0);

如果我误解了你的问题,我道歉。

答案 2 :(得分:1)

如果您正在尝试等待特定时间段,则不断轮询已用时间系统时间是不可取的。或者,您可以使用线程调度程序暂停当前线程的执行,并请求JVM在时间到期时通知您。这允许多线程环境中的其他线程在您等待时完成任务。

try {
    Thread.sleep(3000);
} catch (InterruptedException ex) {
    // Insert appropriate exception handling here...
}

Thread.sleep使当前正在执行的线程移动到就绪状态3000ms。然后,当至少3秒钟时,JVM负责将线程移回运行状态。