logo

Як встановити таймер у Java?

Клас таймера Java

У Java, Таймер це клас, який належить до java.util пакет. Це розширює Об'єкт клас і реалізує Серіалізований інтерфейс. Клас надає конструктори та методи, які можна використовувати для виконання дій, пов’язаних із часом. Використовуючи клас Timer, ми можемо запланувати завдання, яке ми хочемо виконати в певний час.

Зверніть увагу, що клас Timer є потокобезпечним класом. Це означає, що тільки потік може виконувати метод класу таймера. Ще один момент, який слід зазначити, що клас використовує двійкову структуру даних купи для зберігання свого завдання.

Програми Java з таймером

Планування виконання завдання потоком таймера

ScheduleTimer.java

 import java.util.Calendar; import java.util.Timer; import java.util.TimerTask; public class ScheduleTimer { public static void main(String args[]) { //instance of the Timer class Timer timer = new Timer(); TimerTask task = new TimerTask() { //represent the time after which the task will begin to execute int i = 5; @Override public void run() { if(i>0) { System.out.println(i); i--; } else { System.out.println('Wish You Very Happy Birthday!!'); //cancel the task once it is completed timer.cancel(); } } }; //creating an instance of the Calendar class Calendar date = Calendar.getInstance(); //setting the date and time on which timer will begin date.set(2022, Calendar.MARCH, 30,23, 59, 54); //enables the counter to count at a rate of 1 second timer.scheduleAtFixedRate(task, date.getTime(), 1000); } } 

Вихід:

об'єкт для json у java
 5 4 3 2 1 Wish You Very Happy Birthday!! 

Давайте розглянемо іншу програму на Java, в якій ми виконали завдання через певний проміжок часу.

TimerDemo.java

 import java.util.Timer; import java.util.TimerTask; public class TimerDemo { Timer timer = new Timer(); TimerDemo(int seconds) { //schedule the task timer.schedule(new RemindTask(), seconds*1000); } class RemindTask extends TimerTask { public void run() { System.out.println('You have a notification!'); //terminate the timer thread timer.cancel(); } } //driver code public static void main(String args[]) { //function calling new TimerDemo(10); } } 

Вихід:

 You have a notification! 

Програмі потрібно 10 секунд, щоб вивести повідомлення на консоль.

Запуск і зупинка таймера

StartStopTimer.java

 import java.util.Timer; import java.util.TimerTask; class Task extends TimerTask { int counter; public Task() { counter = 0; } public void run() { counter++; System.out.println('Ring ' + counter); } public int getCount() { return counter; } } public class StartStopTimer { private boolean running; private Task task; private Timer timer; public StartStopTimer() { timer = new Timer(true); } public boolean isRinging() { return running; } public void startRinging() { running = true; task = new Task(); timer.scheduleAtFixedRate(task, 0, 3000); } public void doIt() { running = false; System.out.println(task.getCount() + ' times'); task.cancel(); } public static void main(String args[]) { StartStopTimer phone = new StartStopTimer(); phone.startRinging(); try { System.out.println('started running...'); Thread.sleep(20000); } catch (InterruptedException e) { } phone.doIt(); } } 

Вихід:

Як встановити таймер в Java

Так само ми можемо створити таймер зворотного відліку за допомогою класу Timer.