The timer class Timer is in the java.util package. When using it, instantiate it first, and then use the schedule(TimerTask task, long delay) method of the instance to set the specified task to be executed after the specified delay. The timer task class TimerTask is an abstract class that inherits and overrides its run() method to implement specific tasks.
schedule(TimerTask task, Date time) sets the specified task to be executed at the specified time. The
cancel() method ends this timer. The
schedule(TimerTask task, long delay, long period) method sets the specified task task to execute a fixed delay peroid after the specified delay delay. The
scheduleAtFixedRate(TimerTask task, long delay, long period) method sets the specified task task to execute at a fixed frequency peroid after the specified delay.
To implement a scheduled task, it is very easy to use the Timer and TimerTask classes in Java to call the processing function in real time. These two classes are very convenient to use and can complete most of our needs for timers.
Look at a simple example:
public class TimerTest
{
private static final int C_SCHEDULE_HOUR = 0; private static boolean private static boolean Time r timer = new Timer( );
System.out.println("Timer has started");
// Execute this task after 1 second, with an interval of 2 seconds each time. If you pass a Data parameter, you can execute this task at a fixed time Task.
timer.schedule(new MyTask(), 1000, 2000);
System.out.println("Task schedule has been added");
while (true)
{// This is used to stop this task , Otherwise, this task will be executed in a loop
. {
. cancel(); }
‑‑‑ ( ; C Calendar Cal = Calendar.getInstance ();
// In order to prevent it for 24 hours, the task has not yet been executed (of course, the general task is not so long), avoid being scheduled for the second time to cause the execution conflict, setting the settings It indicates whether the status flag isRunning is currently being executed. if (!isRunning)
_SCHEDULE_HOUR == cal.get(Calendar.HOUR_OF_DAY))
// Declare variables
String cityDirectPath = "E:/apache-tomcat-6.0.33/webapps/search/download";
File citydirect = new File(cityDirectPath);
try
{
if (citydirect.exists() && citydirect.isDirectory())
{
// 文件夹*是否存在
fls = citydirect.listFiles();
if (fls != null)
{
for (File fl : fls)
{
fl.delete();
}
}
}
}
catch (Exception e)
{
// out.println("删除失败
");
}
isRunning = false;
System.out.println("指定任务执行结束");
// }
}
else
{
System.out.println("上一次任务执行还未结束");
}
}
}
更多java定时器实例 相关文章请关注PHP中文网!