多语言展示
当前在线:1118今日阅读:26今日分享:39

java中常用线程池:newScheduledThreadPool

newScheduledThreadPool线程池类型也是经常用到的,它可以和newFixedThreadPool类型一样设置并发数量。同时其还支持定时及周期任务执行,因此它常是用于定时任务打当中。
工具/原料
1

java

2

jdk1.8,IntelliJ IDEA

方法/步骤
1

通过Executors创建线程池newScheduledThreadPool的实例。同newFixedThreadPool线程池类型一样,设置并发数最大值。注意该出ScheduledExecutorService继承了ExecutorService。

2

newScheduledThreadPool线程池可以定时和周期执行。在定时任务时,可以调用schedule方法,传入线程实例,定时时间,时间单位。

3

在线程run方法中随意输出一段话,用于模拟线程定时运行。

4

运行main方法,可以看到在3s后,控制台输出了run方法中的输出。

5

newScheduledThreadPool用于周期执行时,可以使用方法scheduleAtFixedRate。如下代码中即是延迟2s中每隔5秒运行一次。

注意事项

如果只是固定次数执行线程后,不再使用到该线程池,需要调用shutdown方法,释放线程池资源。

推荐信息