Rumah Java javaTutorial JDK Timer定时器的用法

JDK Timer定时器的用法

Jun 28, 2017 am 10:34 AM
jdk timer

Implementing and scheduling a task to be executed by a timer
1) Implement a custom subclass of TimerTask. The run method contains the code that performs the task.
    class RemindTask extends TimerTask {
        public void run() {
            System.out.println("Time up!");
            System.exit(0);
        }
    }
2) Create a thread by instantiating the Timer class
    Timer timer = new timer();
3) Instantiate the timer task object(new RemindTask())
    RemindTask task = new RemindTask();
4) Schedule the timer task for execution.
  (1) execute the task after special milliseconds delay.
    timer.schedule(task,5*1000);
  (2) specify the time when the task suould execute.
    //execute the task at 11:01 p.m
    Calendar calendar = Calendar.getInstance();
    calendar.set(Calendar.HOUR_OF_DAY,23);
    calendar.set(Calendar.MINUTE,1);
    calendar.set(Calendar.SECOND,0);
    Date time = calendar.getTime();

    timer.schedule(task,time);

Stopping Timer Threads
  By defaulst, aprogram keeps running as long as its timer threads are running. There is four ways to terminate a timer thread
  1) Invoke cancel on the timer.(timer.cancel())
  2) Make the timer's thread a daemon(后台), by creating the timer like this: new Timer(true). If the only threads left in the program are daemon threads, the program exits.
  3) After all the timer scheduleds tasks have finished executing,remove all references to the Timer object. the timer thread will terminate.
  4) Invoke the System.exit method, which makes the entire program and all its threads exit.

Performing a Task repeatedly
There is four Timer method to perform a task repeatedly
  * schedule(TimerTask task, long delay, long period)
    Schedules the specified task for repeated fixed-delay execution, beginning after the specified delay. Subsequent executions take place at approximately regular intervals separated by the specified period.
    执行重复的任务,第一次在延时时间后执行,往后的以特定的时间间隔执行
    timer.schedule(new RemindTask(),3*1000,1*1000)
    RemindTask任务将会在3秒后执行,以后将会以1秒的间隔重复执行

  * schedule(TimerTask task, Date time, long period)
    执行重复的任务,第一次在特定的时间执行,往后的以特定的时间间隔执行

  * scheduleAtFixedRate(TimerTask task, long delay, long period)
    Schedules the specified task for repeated fixed-rate execution, beginning after the specified delay. Subsequent executions take place at approximately regular intervals, separated by the specified period.
    以固定的延时执行重复的任务,首次执行在特定的延时之后,以后的执行发生在特定的时间间隔之后
    temer.scheduleAtFixedRate(new RemindTask(),3*1000,1*1000)
  * scheduleAtFixedRate(TimerTask task, Date firstTime, long period)
    执行重复的任务,第一次在特定的时间执行,往后的以特定的时间间隔执行

  schedule和scheduleAtFixedRate的区别在于,schedule以固定的相对时间间隔执行,如果某一次执行被延时了,往后的执行的执行时间也会相对延时;而scheduleAtFixedRate是以绝对的时间间隔执行,如果某一次执行被延时,它的后一次执行的延时将会缩短。

Atas ialah kandungan terperinci JDK Timer定时器的用法. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
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

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Artikel Panas

R.E.P.O. Kristal tenaga dijelaskan dan apa yang mereka lakukan (kristal kuning)
4 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Tetapan grafik terbaik
4 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Cara Memperbaiki Audio Jika anda tidak dapat mendengar sesiapa
4 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Arahan sembang dan cara menggunakannya
4 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Cara memasang Java pada Windows 11 Cara memasang Java pada Windows 11 Apr 13, 2023 pm 09:22 PM

Walaupun terdapat sejumlah besar aplikasi yang muncul sekali-sekala, Java kekal sebagai salah satu bahasa pengaturcaraan yang paling banyak digunakan dan penting. Banyak aplikasi bergantung pada Java pada sistem pengendalian Windows, dan mengemas kininya bermakna meningkatkan prestasi dengan menyediakan kestabilan dan keselamatan untuk aplikasi Java berjalan dengan selamat. Anda juga boleh memasang Java pada platform Linux dan macOS. Satu-satunya perbezaan adalah pakej/fail untuk setiap platform. Kini, dengan Windows 11, sudah tiba masanya untuk memuat turun Java dan dalam artikel hari ini, kami akan membawa anda melalui langkah mudah untuk memasangnya pada peranti anda. Versi Java yang manakah harus saya muat turun? Versi Java yang anda muat turun

Adakah pangkalan data oracle memerlukan jdk? Adakah pangkalan data oracle memerlukan jdk? Jun 05, 2023 pm 05:06 PM

Pangkalan data oracle memerlukan jdk. Sebabnya ialah: 1. Apabila menggunakan perisian atau fungsi tertentu, perisian atau perpustakaan lain yang disertakan dalam JDK diperlukan 2. Java JDK perlu dipasang untuk menjalankan program Java dalam pangkalan data Oracle; menyediakan Membangunkan dan menyusun fungsi aplikasi Java 4. Memenuhi keperluan Oracle untuk fungsi Java untuk membantu melaksanakan dan melaksanakan fungsi tertentu.

Analisis contoh proksi dinamik Java JDK Analisis contoh proksi dinamik Java JDK Apr 30, 2023 pm 01:16 PM

1. Jelaskan bahawa Java menyediakan kelas proksi dinamik Proksi bukanlah kelas yang kita panggil objek proksi, tetapi menyediakan kaedah statik (newProxyInstance) untuk mencipta objek proksi untuk mendapatkan objek proksi. 2. Instance publicclassHelloWorld{publicstaticvoidmain(String[]args){//Dapatkan objek proksi ProxyFactoryfactory=newProxyFactory();SellTicketsproxyObject=factory.getProxyObject();proxyO

Tutorial JDK pemasangan sistem Linux Deepin Tutorial JDK pemasangan sistem Linux Deepin Feb 15, 2024 pm 12:36 PM

Sistem Deepin Linux ialah sistem pengendalian domestik berdasarkan kernel Linux Ia mempunyai ciri-ciri kestabilan, keselamatan, dan kemudahan penggunaan Dalam sistem Deepin Linux, memasang JDK (Java Development Kit) adalah langkah yang perlu untuk membangunkan aplikasi Java artikel akan memperkenalkan secara terperinci cara Memasang JDK dalam sistem Deepin Linux. Langkah pemasangan: Buka terminal sistem Deepin Linux. Gunakan baris arahan untuk memuat turun pakej pemasangan JDK Perintahnya adalah seperti berikut: ``shellsudoapt-getinstallopenjdk-11-jdk`` Tunggu muat turun selesai dan sistem akan memasang JDK secara automatik. Untuk mengesahkan sama ada JDK berjaya dipasang, masukkan arahan berikut: ```javaj

Di manakah direktori jdk linux? Di manakah direktori jdk linux? Mar 22, 2023 am 09:52 AM

Direktori linux jdk berada dalam direktori bin Kaedah carian khusus ialah: 1. Cari direktori pelaksanaan javad melalui arahan "whereis java" 2. Cari fail pautan melalui fail pelaksanaan; /etc/alternatives/java" Hanya jalankan arahan untuk mencari direktori pemasangan.

Bagaimana untuk memasang tutorial pemasangan jdk-jdk Bagaimana untuk memasang tutorial pemasangan jdk-jdk Mar 04, 2024 pm 05:10 PM

Baru-baru ini, ramai rakan bertanya kepada saya bagaimana untuk memasang jdk Seterusnya, mari kita pelajari semua tentang cara memasang jdk. 1. Mula-mula muat turun fail pemasangan JDK dan masukkan antara muka pemasangan JDK, seperti yang ditunjukkan dalam rajah. 2. Klik butang "Seterusnya" untuk memasuki antara muka pemasangan tersuai JDK, seperti yang ditunjukkan dalam rajah. 3. Adalah disyorkan untuk memilih untuk memasang terus ke direktori lalai dan klik butang "Seterusnya" untuk memasang, seperti yang ditunjukkan dalam rajah. Anda juga boleh mengklik butang "Tukar" untuk memilih direktori pemasangan sendiri. 4. Selepas pemasangan selesai, antara muka akan muncul dan klik butang "Tutup", seperti yang ditunjukkan dalam rajah. Di atas adalah semua tutorial tentang cara memasang jdk yang dibawakan oleh editor saya harap ia dapat membantu semua orang.

Bagaimana untuk mengkonfigurasi persekitaran jdk dalam sistem Linux Bagaimana untuk mengkonfigurasi persekitaran jdk dalam sistem Linux May 12, 2023 am 09:31 AM

Langkah berikut adalah untuk menggunakan persekitaran jdk dalam sistem Linux 1. Muat turun pakej pemasangan jdk 2. Cipta folder jdk pemasangan baharu (/usr/local/java/jdk) cd /usr/localmkdir/usr/local/javalocal direktori dan cipta cd direktori java baharu /usr/local/javamkdir/usr/local/java/jdk Buat direktori jdk baharu cd/usr/local/java/jdk3 Muat naik pakej pemasangan jdk ke linux4. Format penyahmampatan: Nama selepas nama pakej termampat tarzxvf boleh hanya Masukkan huruf awal dan gunakan kekunci Tab

Bagaimana untuk menentukan fail konfigurasi luaran springboot dalam persekitaran berbilang jdk Bagaimana untuk menentukan fail konfigurasi luaran springboot dalam persekitaran berbilang jdk May 11, 2023 pm 04:01 PM

Penerangan masalah: Apabila terdapat berbilang jdk dalam persekitaran penggunaan, dan versi jdk lalai adalah lebih rendah daripada jdk8. Apabila kita menggunakan aplikasi springboot, kita perlu menentukan jdk sebagai jdk8 atau lebih tinggi. Masalah akan timbul: fail konfigurasi luaran aplikasi springboot tidak boleh dimuatkan, dan ia akan sentiasa menggunakan fail konfigurasi lalai yang diimport ke dalam balang aplikasi. Penyelesaian Masalah Terdapat dua cara untuk menyelesaikan masalah ini, seperti berikut: Tambah parameter permulaan --spring.config.additional-locationnohup/home/jdk1.8.0_251/bin/java-Xms256m-Xmx256m-j

See all articles