温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

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

发布时间:2021-07-28 11:11:43 来源:亿速云 阅读:184 作者:小新 栏目:编程语言

小编给大家分享一下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如何实现定时器和延时加载功能”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注亿速云行业资讯频道!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI