我正在使用 Spring Batch,并且我创建了一个使用SimpleAsyncTaskExecutor
. 在这一步中,我正在检索StepExecutionContext
with
@BeforeStep
public void saveStepExecution(StepExecution stepExecution) {
this.stepExecution = stepExecution;
}
在tasklet的处理方法中,我尝试更新上下文:
stepExecution.getExecutionContext().put("info", contextInfo);
这导致ConcurrentModificationException
s 上stepExecution
。如何在这个多线程环境中避免这些并更新我的上下文?