Java循环一定时间

有没有一种方法可以轻松地在一定时间内进行for循环?(无需使用System.currentTimeMillis()自己测量时间?)

即我想在Java中执行以下操作:

int x = 0;

for( 2 minutes ) {

System.out.println(x++);

}

谢谢

回答:

不,没有内置的结构可以做到这一点。

我想指出,您不应使用System.currentTimeMillis()在指定时间段内执行或延迟任务。而是使用System.nanoTime()。前一种方法在Windows中是不准确的,而后一种方法无论使用哪种操作系统都准确。您可以使用TimeUnit枚举轻松在以毫秒为单位的时间(或任何其他时间单位)与以纳秒为单位的时间之间切换。

for (long stop=System.nanoTime()+TimeUnit.SECONDS.toNanos(2);stop>System.nanoTime();) {

/*

* Hammer the JVM with junk

*/

}

以上是 Java循环一定时间 的全部内容, 来源链接: utcz.com/qa/423189.html

回到顶部