首页 > 开发 > Java > 正文

Java自带定时任务ScheduledThreadPoolExecutor实现定时器和延时加载功能

2024-07-14 08:43:09
字体:
来源:转载
供稿:网友

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);

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对VeVb武林网的支持。


注:相关教程知识阅读请移步到JAVA教程频道。
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表