Here’s how to schedule a task to run periodically in Java.
import java.time.LocalTime; import java.util.concurrent.Executors; import java.util.concurrent.ScheduledExecutorService; import java.util.concurrent.TimeUnit; public class TimePrinter { private final ScheduledExecutorService scheduledExecutorService = Executors.newSingleThreadScheduledExecutor(); public static void main(String[] args) throws InterruptedException { var timePrinter = new TimePrinter(); timePrinter.printCurrentTimeEvery2Seconds(); Thread.sleep(15_000); timePrinter.stopPrinting(); } public void printCurrentTimeEvery2Seconds() { Runnable task = () -> System.out.println(LocalTime.now()); scheduledExecutorService.scheduleAtFixedRate(task, 0, 2, TimeUnit.SECONDS); } public void stopPrinting() { scheduledExecutorService.shutdown(); } }
If you have any questions, leave a comment or ask me on my social media.