ScheduledThreadPoolExecutor继承了ThreadPoolExecutor并实现了ScheduledExecutorService接口。
    线程池队列是DelayedWorkQueue,其和DelayedQueue类似,是一个延迟队列。
    ScheduledFutureTask是具有返回值的任务,继承自FutureTask。
    FutureTask的内部有一个变量state用来表示任务的状态,一开始状态为NEW,所有状态为
    XE_)]H1H($}46`U4`V)VG(H.png
    状态转换:
    image.png
    ScheduledFutureTask内部还有一个变量period用来表示任务的类型
    ● period=0,说明当前任务是一次性的,执行完毕后就退出了。
    ● period为负数,说明当前任务为fixed-delay任务,是固定延迟的定时可重复执行任务。
    ● period为正数,说明当前任务为fixed-rate任务,是固定频率的定时可重复执行任务。