23-其他说明
其他说明
也可以用 Runnable
接口来实现任务,因为 ScheduledThreadPoolExecutor
类的 schedule()
方法可以接受两种类型的任务。虽然 ScheduledThreadPoolExecutor
类是 ThreadPoolExecutor
类的一个子类,但Java仍然推荐只在处理延迟或周期性任务时使用 ScheduledThreadPoolExecutor
类。
最后,当调用 shutdown()
方法并有任务还在等待调度时,读者可以配置 Scheduled- ThreadPoolExecutor
类的行为。默认情况下,这些任务在执行器终止后仍然会执行。可以通过调用 ScheduledThreadPoolExecutor
类的 setExecuteExistingDelayed- TasksAfterShutdownPolicy()
方法来修改这一行为。如果调用 setExecute- ExistingDelayedTasksAfeterShutdownsPolicy()
方法时传入 false
值,则未调用的任务在调用 shutdown()方
法后不会再执行。