接口 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
-
方法详细资料
-
triggerUpdate
default boolean triggerUpdate()是否触发 onUpdate 监听回调方法- 返回:
- true 执行 onUpdate 方法
-
onUpdate
void onUpdate()Timer 监听回调 -
onException
异常回调当 triggerUpdate 或 onUpdate 方法抛出异常时,将会传递到这里
- 参数:
e
- e
-
getExecutor
执行 onUpdate 的执行器如果返回 null 将在 HashedWheelTimer 中执行。 如果有耗时的任务,比如涉及一些 io 操作的,建议指定执行器来执行当前回调(onUpdate 方法),以避免阻塞其他任务。
示例default Executor getExecutor() { // 耗时任务,指定一个执行器来消费当前 onUpdate return TaskKit.getCacheExecutor(); }
- 返回:
- 当返回值为 null 时,将使用当前线程(默认 HashedWheelTimer)执行,否则使用该执行器来执行
-