在停止作业时停止Tasklet

时间:2020-01-21 16:19:01

标签: spring spring-batch spring-batch-admin spring-batch-tasklet spring-batch-job-monitoring

我们正尝试使用api停止当前正在运行的作业,该API会检查当前正在运行的作业,并使用执行ID停止该工作。

jobOperator.stop(jobExecution.getId());

现在,作业有多个步骤。 很少有步骤被配置为Tasklet。 触发api停止作业时(正在执行Tasklet时),该作业实际上并未停止。 但是要说我们触发了api来停止作业(该步骤具有读取器,处理器和写入器),在这种情况下,作业将被Job中断,并被步骤执行中断,这是需要的。 但是只有将步骤配置为任务集时才有问题。

我们还尝试实现StoppableTasklet,但不确定如何识别作业是否已停止以及如何在 stop 替代方法内执行必要的操作?

0 个答案:

没有答案