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
















©️2020 CSDN 皮肤主题: 护眼 设计师:闪电赇 返回首页