Java自带定时任务ScheduledThreadPoolExecutor实现定时器和延时加载功能
作者:执笔记忆的空白
今天小编就为大家分享一篇关于Java自带定时任务ScheduledThreadPoolExecutor实现定时器和延时加载功能,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
java.util.concurrent.ScheduledThreadPoolExecutor
是JDK1 .6之后自带的包,功能强大,能实现定时器和延时加载的功能
各类功能和处理方面优于Timer
1、定时器:
- ScheduledThreadPoolExecutor 有个scheduleAtFixedRate(command, initialDelay, period, unit) ;方法
- command: 执行的线程(可自己New一个)
- initialDelay:初始化执行的延时时间
- period: 时间间隔
- unit : 时间类型(如TimeUnit.SECONDS: 秒的方式执行,TimeUnit.DAYS : 天数的方式执行)
具体代码:
public static void main(String[] args) { stThread.scheduleAtFixedRate(new Runnable() { @Override public void run() { // TODO Auto-generated method stub System.out.println(new Date()); } }, 20, 2, TimeUnit.SECONDS); }
2、延时处理
- ScheduledThreadPoolExecutor 有个 schedule(callable, delay, unit) ; 方法
- callable:回调方法
- delay:延时时间
- unit:时间类型,同定时器的unit一样
具体代码:
stThread.schedule((RolePrvlegeTask)SpringUtils.getBean("rolePrvlegeTask"), 1, TimeUnit.SECONDS);
总结
以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对脚本之家的支持。如果你想了解更多相关内容请查看下面相关链接
您可能感兴趣的文章:
- Java调度线程池ScheduledThreadPoolExecutor不执行问题分析
- java高并发ScheduledThreadPoolExecutor类深度解析
- 详解Java ScheduledThreadPoolExecutor的踩坑与解决方法
- java高并发ScheduledThreadPoolExecutor与Timer区别
- java 定时器线程池(ScheduledThreadPoolExecutor)的实现
- Java使用quartz实现定时任务示例详解
- Java实现定时任务最简单的3种方法
- Java项目实现定时任务的三种方法
- Java定时任务ScheduledThreadPoolExecutor示例详解