被执行

Timer与TimerTask源码阅读杂记

孤街醉人 提交于 2020-01-07 06:49:49
【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>> TimerTask 实现Runnable接口。可以被Timer调度执行一次或者周期性执行的任务类。位于java.util包内。 实例属性: int state; // 包括VIRGIN、SCHEDULED、EXECUTED、CANCELLED long nextExecutionTime; // 下一次任务执行时刻 long period; // 周期性任务的执行时间间隔 方法: TimerTask() 构造方法 abstract void run() boolean cancel() 取消任务,更改任务状态state为CANCELLED。如果一次性任务还没有被执行或者是周期性任务,返回true。对于一次性任务,如果任务已经处于SCHEDULLED状态但还没 有执行则永远不会被执行。而对于周期性任务,如果任务还没有被调度,则任务将不会被执行;而如果已经在执行,则执行完当前周期,但之后再也不会被执行。 这个方法可以被多次调用,但第二次以及之后的调用没有任何效果。 long scheduledExecutionTime(): 返回本任务将要被执行的时刻,对于周期性任务没有什么意义。 Timer 线程安全的,多个线程可以共享一个Timer实例。 用来调度任务在将来执行一次或者周期性执行的辅助类。