Kullanım java.util.concurrent.TimeUnit:
TimeUnit.SECONDS.sleep(1);
Bir saniye uyu veya
TimeUnit.MINUTES.sleep(1);
Bir dakika uyu.
Bu bir döngü olduğu için, doğasında var olan bir sorun - sürüklenme ortaya çıkar. Her kod çalıştırdığınızda ve sonra uyuduğunuzda, her saniye biraz koşmaktan sürükleneceksiniz. Bu bir sorunsa kullanmayın sleep.
Ayrıca, sleepkontrol söz konusu olduğunda çok esnek değildir.
Bir görevi her saniye veya bir saniyelik bir gecikmeyle yürütmek için bir [ ] [1] ve [ ] [2] veya [ ] [3] değerlerini şiddetle öneririm .ScheduledExecutorServicescheduleAtFixedRatescheduleWithFixedDelay
Yöntemi myTaskher saniye çalıştırmak için (Java 8):
public static void main(String[] args) {
final ScheduledExecutorService executorService = Executors.newSingleThreadScheduledExecutor();
executorService.scheduleAtFixedRate(App::myTask, 0, 1, TimeUnit.SECONDS);
}
private static void myTask() {
System.out.println("Running");
}