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