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方法,释放线程池资源。
上一篇:java8线程池如何使用
下一篇:007和小护士视频攻略