java.util.concurrent.ScheduledThreadPoolExecutor 是 JDK1 .6之后自带的 包,功能强大,能实现定时器和延时加载的功能
各类功能和处理方面优于Timer
1、定时器:
ScheduledThreadPoolExecutor 有个scheduleAtFixedRate(command, initialDelay, period, unit) ;方法
command: 执行的线程(可自己New一个)
initialDelay:初始化执行的延时时间
period: 时间间隔
unit : 时间类型(如TimeUnit.SECONDS: 秒的方式执行 , TimeUnit.DAYS : 天数的方式执行)
具体代码:
代码语言:javascript复制 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一样
具体代码:
代码语言:javascript复制stThread.schedule((RolePrvlegeTask)SpringUtils.getBean("rolePrvlegeTask"), 1, TimeUnit.SECONDS);