七、java实现定时任务的三种方式
2017-03-09 19:37
816 查看
一、测试定时任务的实现,以内部类的方式实现Runnable接口,在run方法中使用Thread.sleep();方法来实现定时时间戳调度,并通过线程开启的方式来调用
二、内部类方式实现TimerTask接口,在run()方法里实现具体任务,使用Timer的当时来实现定时调度,并且可以设置首次执行延迟时间。 Timer实例可以调度多任务,它是线程安全的。 当Timer的构造器被调用时,它创建了一个线程,这个线程可以用来调度任务(单线程执行定时任务)。
三、ScheduledExecutorService是从Java SE5的java.util.concurrent里,做为并发工具类被引进的,这是最理想的定时任务实现方式。它是通过线程池的方式来执行任务的,提供了良好的约定,以便设定执行的时间间隔 。
原文出处:http://blog.csdn.net/haorengoodman/article/details/23281343/
final long timeInterval = 1000; //neibulei内部类shixian内部类实现runnable接口 Runnable runnable = new Runnable() { public void run() { while (true) { System.out.println("Hello !!"); try { Thread.sleep(timeInterval); } catch (InterruptedException e) { e.printStackTrace(); } } } }; Thread thread = new Thread(runnable); thread.start();
二、内部类方式实现TimerTask接口,在run()方法里实现具体任务,使用Timer的当时来实现定时调度,并且可以设置首次执行延迟时间。 Timer实例可以调度多任务,它是线程安全的。 当Timer的构造器被调用时,它创建了一个线程,这个线程可以用来调度任务(单线程执行定时任务)。
TimerTask task = new TimerTask() { @Override public void run() { System.out.println("lattice !!!"); } }; Timer timer = new Timer(); long delay = 0; //首次执行延迟的时间 long intevalPeriod = 1 * 1000; //多次调用时间戳 // 在一个定时器中执行实现的计划任务 timer.scheduleAtFixedRate(task, delay, intevalPeriod);
三、ScheduledExecutorService是从Java SE5的java.util.concurrent里,做为并发工具类被引进的,这是最理想的定时任务实现方式。它是通过线程池的方式来执行任务的,提供了良好的约定,以便设定执行的时间间隔 。
Runnable runnable = new Runnable() { public void run() { System.out.println("Hello !!"); } }; ScheduledExecutorService service = Executors .newSingleThreadScheduledExecutor(); // 第二个参数为首次执行的延时时间,第三个参数为定时执行的间隔时间 service.scheduleAtFixedRate(runnable, 10, 1, TimeUnit.SECONDS);
原文出处:http://blog.csdn.net/haorengoodman/article/details/23281343/
相关文章推荐
- java作业调度、定时任务实践(三种实现方式)
- java实现定时任务的三种方式
- Java实现定时任务的三种方式
- Java实现定时任务的三种方式
- Java实现定时任务的三种方法
- Java实现定时任务的三种方法
- Java定时任务的三种实现方法
- java实现定时任务的三种方法
- Java实现定时任务的三种方法
- Java实现定时任务的三种方法
- [转]Java实现定时任务的三种方法
- Java实现定时任务的三种方法
- Java实现定时任务的三种方法
- Java实现定时任务的三种方法
- Java实现定时任务的三种方法
- Java实现定时任务的三种方法
- Java实现定时任务的三种方法
- Java实现定时任务的三种方法
- 【Java】定时任务的几种实现方式
- Java实现定时任务的三种方法