接口 TaskListener

所有已知子接口:
OnceTaskListener

public interface TaskListener
任务监听回调,使用场景有:一次性延时任务、任务调度、轻量可控的延时任务、轻量的定时入库辅助功能 ...等其他扩展场景。 相关文档
     这些使用场景都有一个共同特点,即监听回调。接口提供了 4 个方法,如下
     1. CommonTaskListener.onUpdate(),监听回调
     2. CommonTaskListener.triggerUpdate(),是否触发 CommonTaskListener.onUpdate() 监听回调方法
     3. CommonTaskListener.onException(Throwable) ,异常回调。在执行 CommonTaskListener.triggerUpdate()CommonTaskListener.onUpdate() 方法时,如果触发了异常,异常将被该方法捕获。
     4. CommonTaskListener.getExecutor(),指定执行器来执行上述方法,目的是不占用业务线程。
 
从以下版本开始:
21.9
作者:
渔民小镇
日期:
2023-12-06
  • 方法概要

    修饰符和类型
    方法
    说明
    default Executor
    执行 onUpdate 的执行器
    default void
    异常回调
    void
    Timer 监听回调
    default boolean
    是否触发 onUpdate 监听回调方法
  • 方法详细资料

    • triggerUpdate

      default boolean triggerUpdate()
      是否触发 onUpdate 监听回调方法
      返回:
      true 执行 onUpdate 方法
    • onUpdate

      void onUpdate()
      Timer 监听回调
    • onException

      default void onException(Throwable e)
      异常回调
           当 triggerUpdate 或 onUpdate 方法抛出异常时,将会传递到这里
       
      参数:
      e - e
    • getExecutor

      default Executor getExecutor()
      执行 onUpdate 的执行器
           如果返回 null 将在 HashedWheelTimer 中执行。
      
           如果有耗时的任务,比如涉及一些 io 操作的,建议指定执行器来执行当前回调(onUpdate 方法),以避免阻塞其他任务。
       
      示例
      
           default Executor getExecutor() {
               // 耗时任务,指定一个执行器来消费当前 onUpdate
               return TaskKit.getCacheExecutor();
           }
       
       
      返回:
      当返回值为 null 时,将使用当前线程(默认 HashedWheelTimer)执行,否则使用该执行器来执行