Maison >Java >javaDidacticiel >Comment implémenter des retards précis dans l'exécution de Java ?
Suspension de l'exécution en Java pour retard
En Java, l'exécution d'une boucle qui nécessite une exécution limitée dans le temps introduit le besoin de retards. Ce guide explique la méthode d'incorporation des retards dans Java.
En utilisant TimeUnit pour Delay
En tirant parti de java.util.concurrent.TimeUnit, vous pouvez introduire des retards comme indiqué ci-dessous :
TimeUnit.SECONDS.sleep(1); // Pauses for one second TimeUnit.MINUTES.sleep(1); // Pauses for one minute
Cependant, cette méthode peut conduire à des dérives dans le temps en raison des variations naturelles d'exécution d'un boucle.
Alternative avec ScheduledExecutorService
Pour des délais plus précis et flexibles, pensez au ScheduledExecutorService. Il permet de planifier des tâches avec des tarifs ou des délais fixes :
Pour Java 8 :
final ScheduledExecutorService executorService = Executors.newSingleThreadScheduledExecutor(); executorService.scheduleAtFixedRate(App::myTask, 0, 1, TimeUnit.SECONDS);
Pour Java 7 :
final ScheduledExecutorService executorService = Executors.newSingleThreadScheduledExecutor(); executorService.scheduleAtFixedRate(new Runnable() { @Override public void run() { myTask(); } }, 0, 1, TimeUnit.SECONDS);
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!