Saya menggunakan java.util.Timer
kelas dan saya menggunakan metode jadwal untuk melakukan beberapa tugas, tetapi setelah menjalankannya selama 6 kali saya harus menghentikan tugasnya.
Bagaimana saya harus melakukan itu?
Jawaban:
Simpan referensi ke pengatur waktu di suatu tempat, dan gunakan:
timer.cancel();
timer.purge();
untuk menghentikan apa pun yang dilakukannya. Anda dapat memasukkan kode ini ke dalam tugas yang Anda lakukan dengan a static int
untuk menghitung berapa kali Anda berkeliling, mis
private static int count = 0;
public static void run() {
count++;
if (count >= 6) {
timer.cancel();
timer.purge();
return;
}
... perform task here ....
}
cancel
itu sendiri akan berhasil.
Entah panggilan cancel()
padaTimer
jika semua itu dilakukan, atau cancel()
padaTimerTask
jika timer itu sendiri memiliki tugas-tugas lain yang Anda ingin melanjutkan.
Anda harus menghentikan tugas yang telah Anda jadwalkan pada timer: Timer Anda:
Timer t = new Timer();
TimerTask tt = new TimerTask() {
@Override
public void run() {
//do something
};
}
t.schedule(tt,1000,1000);
Untuk menghentikan:
tt.cancel();
t.cancel(); //In order to gracefully terminate the timer thread
Perhatikan bahwa hanya membatalkan timer tidak akan menghentikan timertas yang sedang berlangsung.
Hentikan Pewaktu sekali setelah bangun pada waktu tertentu dalam milidetik.
Timer t = new Timer();
t.schedule(new TimerTask() {
@Override
public void run() {
System.out.println(" Run spcific task at given time.");
t.cancel();
}
}, 10000);