logo

Kā iestatīt taimeri Java?

Java taimera klase

Java valodā, Taimeris ir klase, kas pieder pie java.util iepakojums. Tas paplašina Objekts klasē un īsteno Serializējams saskarne. Klase nodrošina konstruktorus un metodes, ko var izmantot, lai veiktu ar laiku saistītas darbības. Izmantojot taimera klasi, mēs varam ieplānot uzdevumu, kuru mēs vēlamies izpildīt noteiktā laikā.

Ņemiet vērā, ka Taimera klase ir pavedienu droša klase. Tas nozīmē, ka taimera klases metodi var izpildīt tikai pavediens. Vēl viens punkts, kas jāņem vērā, ka klase izmanto bināro kaudzes datu struktūru, lai saglabātu savu uzdevumu.

Taimeris Java programmas

Uzdevuma plānošana, kas jāizpilda, izmantojot taimera pavedienu

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); } } 

Izvade:

virkne līdz garai
 5 4 3 2 1 Wish You Very Happy Birthday!! 

Apskatīsim citu Java programmu, kurā esam izpildījuši uzdevumu pēc noteikta laika intervāla.

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); } } 

Izvade:

 You have a notification! 

Programmai nepieciešamas 10 sekundes, lai parādītu ziņojumu konsolē.

Sāciet un apturiet taimeri

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(); } } 

Izvade:

Kā iestatīt taimeri Java

Līdzīgi mēs varam izveidot arī atpakaļskaitīšanas taimeri, izmantojot taimera klasi.