20 秒后从“时”循环中断

20 秒后,如何从 while 循环中解脱出来?我想避免使用线程。


while (var) {

    // ...do something


    if (20secondsIsPassed) {

        break;

    }

}


jeck猫
浏览 74回答 2
2回答

慕盖茨4494581

如果你的循环内部检查了经过的时间,那么你就不会有20秒,但至少有20秒。最简单的方法是这样的:ifwhileLocalDateTime then = LocalDateTime.now();while (true) {    // logic    if (ChronoUnit.SECONDS.between(then, LocalDateTime.now()) >= 20) break;}

慕神8447489

只需知道每秒代表1000毫秒,您就可以进行以下计算:long seconds = System.currentTimeMillis();    while (var && (seconds + (20 * 1000) > System.currentTimeMillis())) {        // ...do something    }
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java