从Java中的计时器任务队列中删除所有已取消的任务
Timer类的方法之一是intpurge()方法。purge()方法从计时器的任务队列中删除所有已取消的任务。调用此方法不会影响计时器的行为,而是会从队列中删除对已取消任务的引用。从JDK1.5开始,就使用了purge()方法。
purge()方法充当时空权衡的一种媒介,在此过程中,空间会交换时间。更具体地说,该方法的时间复杂度与n+clogn成正比,其中n是队列中的任务数,c是已取消任务的数。
声明-java.util.Timer.purge()方法的声明如下-
public int purge()
让我们看一下purge()方法的示例程序
示例
import java.util.*;
public class Example {
public static void main(String[] args) {
Timer timer = new Timer(); // creating timer
TimerTask task = new TimerTask() // creating timer task
{
public void run() {
for(int i=1; i<=5;i++) {
System.out.println("Task is running");
if(i>=3) {
System.out.println("Task terminated");
timer.cancel();
break;
}
}
//通过清除计时器打印任务的清除值
System.out.println("任务的清除是 "+timer.purge());
};
};
timer.schedule(task,7000,4000);
}
}输出结果
Task is running Task is running Task is running Task terminated 任务的清除是 0
热门推荐
10 祝孙辈生日祝福语简短
11 恋人跨年祝福语大全简短
12 考大学敬酒简短祝福语
13 开工投产大吉祝福语 简短
14 偶然结婚祝福语朋友简短
15 感谢学长学姐祝福语简短
16 戏精的祝福语简短
17 我要结婚祝福语简短
18 婚前女儿生日祝福语简短