当前位置:嗨网首页>书籍在线阅读

17-自定义在一个周期调度性线程池中运行的任务

  
选择背景色: 黄橙 洋红 淡粉 水蓝 草绿 白色 选择字体: 宋体 黑体 微软雅黑 楷体 选择字体大小: 恢复默认

8.6 自定义在一个周期调度性线程池中运行的任务

周期调度性线程池(Scheduled thread pool)是一个 Executor 框架的基本线程池的扩展,它允许在一段时间间隔后周期性地执行任务。它由 ScheduledThreadPoolExecutor 类来实现,并且允许执行以下两种任务。

  • 延迟任务 (Delayed task):这种任务都是在一段时间后一次性地执行。
  • 周期任务 (Periodic task):这种任务都是在一个延迟时间后永久周期性地执行。

虽然延迟任务可以执行 CallableRunnable 对象,但是周期任务只能执行 Runnable 对象。所有任务都由一个实现 RunnableScheduledFuture 接口的周期线程池所执行。本节将介绍如何设计属于自己的 RunnableScheduledFuture 接口的实现类,并且用它来执行延迟和周期两种任务。