Јава тајмер класа
у Јави, Тајмер је класа која припада јава.утил пакет. Проширује се Објекат класе и спроводи Сериализабле интерфејс. Класа обезбеђује конструкторе и методе које се могу користити за обављање временских активности. Користећи класу Тимер, можемо заказати задатак који желимо да извршимо у одређено време.
Имајте на уму да је класа Тајмер класа безбедна за нити. То значи да само нит може да изврши метод класе тајмера. Још једна ствар коју треба приметити да класа користи бинарну структуру података гомиле за складиштење свог задатка.
Тајмер Јава програми
Планирање задатка који ће извршити тајмер Тхреад
СцхедулеТимер.јава
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); } }
Излаз:
централно дугме у цсс-у
5 4 3 2 1 Wish You Very Happy Birthday!!
Хајде да видимо још један Јава програм у којем смо извршили задатак након одређеног временског интервала.
ТимерДемо.јава
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 секунди да прикаже поруку на конзоли.
Покрените и зауставите тајмер
СтартСтопТимер.јава
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(); } }
Излаз:
Слично томе, такође можемо да креирамо тајмер за одбројавање користећи класу Тимер.