Rumah  >  Artikel  >  Java  >  Bagaimana untuk menetapkan masa dalam pemasa java

Bagaimana untuk menetapkan masa dalam pemasa java

小老鼠
小老鼠asal
2023-12-26 16:31:371545semak imbas

Kaedah tetapan: 1. Gunakan kaedah larian TimerTask untuk menentukan tugasan untuk pelaksanaan berjadual 2. Melalui kaedah jadual Pemasa, anda boleh menetapkan masa mula, selang, dan lain-lain pemasa; dilaksanakan serta-merta selepas program bermula. Kemudian laksanakannya setiap 1000 milisaat dan teruskan sehingga pemasa dibatalkan.

Bagaimana untuk menetapkan masa dalam pemasa java

Sistem pengendalian tutorial ini: sistem Windows 10, komputer Dell G3.

Di Java, anda boleh menggunakan kelas Pemasa dan kelas TimerTask untuk melaksanakan tugas yang dijadualkan. Berikut ialah contoh mudah yang menunjukkan cara menggunakan Timer dan TimerTask untuk menetapkan pemasa dan melaksanakan tugas:

import java.util.Timer;
import java.util.TimerTask;
public class TimerExample {
    public static void main(String[] args) {
        // 创建定时器对象
        Timer timer = new Timer();
        // 创建定时任务对象
        TimerTask task = new TimerTask() {
            @Override
            public void run() {
                // 在此处编写定时执行的任务
                System.out.println("Task executed at: " + System.currentTimeMillis());
            }
        };
        // 设置定时器,延迟0毫秒后开始执行任务,每隔1000毫秒执行一次
        timer.schedule(task, 0, 1000);
        // 等待一段时间后,取消定时任务
        try {
            Thread.sleep(5000);
        } catch (InterruptedException e) {
            e.printStackTrace();
        }
        // 取消定时任务
        timer.cancel();
        System.out.println("Timer canceled");
    }
}

Dalam contoh di atas, kaedah larian TimerTask mentakrifkan tugasan untuk dilaksanakan secara kerap. Melalui kaedah jadual Pemasa, anda boleh menetapkan masa mula, selang waktu, dsb. pemasa. Dalam contoh ini, tugas akan dilaksanakan serta-merta selepas program bermula, kemudian setiap 1000 milisaat, dan diteruskan sehingga pemasa dibatalkan.

Sila ambil perhatian bahawa kelas Pemasa telah ditamatkan dalam Java Adalah disyorkan untuk menggunakan ScheduledExecutorService untuk melaksanakan tugas berjadual kerana ia menyediakan fungsi penjadualan yang lebih berkuasa dan fleksibel. Berikut ialah contoh penggunaan ScheduledExecutorService:

import java.util.concurrent.Executors;
import java.util.concurrent.ScheduledExecutorService;
import java.util.concurrent.TimeUnit;
public class ScheduledExecutorExample {
    public static void main(String[] args) {
        // 创建ScheduledExecutorService对象
        ScheduledExecutorService scheduler = Executors.newScheduledThreadPool(1);
        // 创建定时任务对象
        Runnable task = () -> {
            // 在此处编写定时执行的任务
            System.out.println("Task executed at: " + System.currentTimeMillis());
        };
        // 设置定时器,延迟0毫秒后开始执行任务,每隔1000毫秒执行一次
        scheduler.scheduleAtFixedRate(task, 0, 1000, TimeUnit.MILLISECONDS);
        // 等待一段时间后,关闭定时器
        try {
            Thread.sleep(5000);
        } catch (InterruptedException e) {
            e.printStackTrace();
        }
        // 关闭定时器
        scheduler.shutdown();
        System.out.println("Scheduler shutdown");
    }
}

Contoh ini menggunakan kaedah scheduleAtFixedRate ScheduledExecutorService, yang parameternya termasuk objek tugas, masa tunda awal, masa selang dan unit masa. Dalam contoh ini, tugas akan dilaksanakan serta-merta selepas program bermula, kemudian setiap 1000 milisaat, dan diteruskan sehingga pemasa dimatikan.

Atas ialah kandungan terperinci Bagaimana untuk menetapkan masa dalam pemasa java. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn