CodeGym /Blog Java /rawak /Kelas Pemasa Java
John Squirrels
Tahap
San Francisco

Kelas Pemasa Java

Diterbitkan dalam kumpulan
Kelas Pemasa Java ialah alat berkuasa yang membolehkan anda menjadualkan tugasan untuk dilaksanakan pada selang waktu tertentu. Sama ada anda perlu menjalankan tugas sekali atau berulang kali, Kelas Pemasa menyediakan cara yang mudah untuk mengautomasikan program Java anda. Dalam artikel ini, kami akan meneroka ciri Kelas Pemasa Java dan mempelajari cara melaksanakannya dengan berkesan.

Pengenalan kepada Kelas Pemasa Java

Kelas Pemasa ialah sebahagian daripada pakej java.util dan digunakan untuk menjadualkan tugasan untuk dilaksanakan pada masa tertentu atau pada selang masa yang tetap. Ia menyediakan cara yang mudah dan boleh dipercayai untuk melaksanakan kod pada selang masa yang telah ditetapkan, menjadikannya sesuai untuk tugas seperti mencetuskan peristiwa, melakukan kemas kini berkala atau menjadualkan proses latar belakang. Untuk menggunakan Kelas Pemasa , anda perlu mencipta objek Pemasa daripada kelas java.util.Timer . Objek Pemasa ini bertanggungjawab untuk menjadualkan dan melaksanakan tugas berdasarkan keperluan anda.

Mencipta Objek Pemasa

Mari mulakan dengan mencipta objek Pemasa dan meneroka kaedahnya. Dalam contoh kod berikut, kami mencipta objek Pemasa dan menjadualkan tugasan untuk dilaksanakan sekali selepas kelewatan yang ditentukan:
// First we will import the java.util.Timer & java.util.TimerTask classes
import java.util.Timer;
import java.util.TimerTask;

public class TimerExample {
    public static void main(String[] args) {
        Timer timer = new Timer(); // Creating a Timer object from the timer class

        TimerTask task1 = new TimerTask() {
            public void run() {
                System.out.println("Task 1 executed!");
            }
        };

        TimerTask task2 = new TimerTask() {
            public void run() {
                System.out.println("Task 2 executed!");
            }
        };

        TimerTask task3 = new TimerTask() {
            public void run() {
                System.out.println("Task 3 executed!");
            }
        };

        // Scheduling tasks to run after specified delays
        timer.schedule(task1, 2000); // Using the schedule method of the timer class
        timer.schedule(task2, 4000); // Using the schedule method of the timer class
        timer.schedule(task3, 6000); // Using the schedule method of the timer class
    }
}
Dalam contoh yang dikemas kini ini, objek Pemasa dicipta menggunakan kelas Pemasa . Setiap TimerTask mewakili tugas yang akan dijadualkan dan dilaksanakan oleh pemasa. Kaedah larian dalam setiap TimerTask mengandungi kod yang akan dilaksanakan apabila tugasan dijalankan . Tugasan kemudiannya dijadualkan menggunakan kaedah jadual kelas Pemasa , menentukan tugasan dan kelewatan dalam milisaat. Dalam kod ini, kaedah jadual digunakan tiga kali, setiap kali dengan tugasan dan kelewatan yang berbeza.

Pengeluaran

Apabila anda menjalankan kod, ia akan mengeluarkan:
Tugasan 1 dilaksanakan! Tugasan 2 dilaksanakan! Tugasan 3 dilaksanakan!
Setiap tugasan dilaksanakan selepas kelewatan masing-masing, menunjukkan kefungsian kelas Pemasa .

Kaedah Pemasa

Kelas Pemasa menyediakan pelbagai kaedah untuk menjadualkan tugas untuk pelaksanaan. Mari kita terokai beberapa kaedah yang biasa digunakan:

1. jadual (tugas TimerTask, kelewatan yang lama)

Kaedah ini menjadualkan tugas yang ditentukan untuk pelaksanaan selepas kelewatan yang ditentukan. Kelewatan dinyatakan dalam milisaat. Sebagai contoh:
timer.schedule(task, 5000); // Schedule the task to run after a 5-second delay

2. jadual (tugas TimerTask, Masa Tarikh)

Kaedah ini menjadualkan tugas yang ditentukan untuk pelaksanaan pada masa yang ditetapkan. Tugasan akan dilaksanakan sekali sahaja. Sebagai contoh:
Date executionTime = new Date(System.currentTimeMillis() + 5000); // Get the current time + 5 seconds
timer.schedule(task, executionTime); // Schedule the task to run at the specified time

3. jadual (tugas TimerTask, kelewatan yang lama, tempoh yang lama)

Kaedah ini menjadualkan tugas yang ditentukan untuk pelaksanaan berulang selepas kelewatan yang ditentukan dan pada selang waktu yang ditentukan. Kelewatan ialah masa dalam milisaat sebelum pelaksanaan pertama, dan tempoh ialah masa dalam milisaat antara pelaksanaan berikutnya. Sebagai contoh:
timer.schedule(task, 2000, 5000); // Schedule the task to run after a 2-second delay and repeat every 5 seconds

Jadual Pemasa Java

Sebagai tambahan kepada kaedah penjadualan asas, Kelas Pemasa juga menyediakan kaedah penjadualan berkuasa yang dipanggil jadual(tugas TimerTask, Date firstTime, tempoh panjang) . Kaedah ini membolehkan anda menjadualkan tugas untuk pelaksanaan berulang bermula pada masa tertentu dan pada selang masa yang tetap. Berikut ialah contoh yang menunjukkan penggunaan kaedah ini:
import java.util.Timer;
import java.util.TimerTask;
import java.util.Date;

public class TimerExample {
    public static void main(String[] args) {
        Timer timer = new Timer();

        TimerTask task = new TimerTask() {
            public void run() {
                System.out.println("Task executed!");
            }
        };

        // Schedule the task to run every 5 seconds starting from the current time
        Date startTime = new Date();
        timer.schedule(task, startTime, 5000);
    }
}
Dalam contoh ini, kami mencipta objek Pemasa dan mentakrifkan PemasaTask seperti sebelum ini. Kami juga mencipta objek startTime jenis Date untuk menentukan masa mula untuk tugasan. Kaedah jadual kemudian digunakan untuk menjadualkan tugasan dijalankan setiap 5 saat bermula dari masa semasa. Dengan kaedah penjadualan ini, tugas akan terus dilaksanakan pada selang waktu tertentu sehingga objek Pemasa dibatalkan atau program ditamatkan. Jika tidak, ia akan membuang pengecualian.

Kesimpulan

Kelas Pemasa Java daripada pakej java.util.Timer ialah alat serba boleh untuk menjadualkan tugas dalam aplikasi Java anda. Ia membolehkan anda mengautomasikan pelaksanaan kod pada selang waktu tertentu, menjadikannya berguna untuk pelbagai senario seperti mencetuskan peristiwa, melakukan kemas kini berkala atau menjadualkan proses latar belakang. Dalam artikel ini, kami meneroka asas Kelas Pemasa Java , termasuk penciptaan objek Pemasa , penjadualan tugas dengan kelewatan atau masa tertentu dan menyediakan pelaksanaan berulang. Kami juga mempelajari tentang kaedah penting yang disediakan oleh Kelas Pemasa , seperti `jadual` dan jadual(tugas TimerTask, Date firstTime, tempoh yang panjang) . Dengan menggunakan Kelas Pemasa dengan berkesan, anda boleh menambah tahap automasi dan kecekapan pada program Java anda. Eksperimen dengan pilihan penjadualan yang berbeza dan terokai keupayaan lanjut Kelas Pemasa untuk meningkatkan kefungsian aplikasi anda.
Komen
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION