春季批量工作|读/写是否发生在同一个线程中?

时间:2014-08-11 10:57:21

标签: java batch-processing spring-batch

我正在运行一个弹簧批处理作业,读者阅读文件并返回一个列表,编写者使用该列表并写入文件。

以下是否意味着此读取器/写入器将在一个线程中运行?是否保证将相同的线程用于读写器进程。如果是,则以下配置是否控制。

<batch:chunk reader="itemReader" writer="itemWriter">

背景: 我使用静态线程局部变量来收集与读取和写入相关的错误,并在写入过程结束时打印它们。如果spring批处理使用不同的线程来处理该进程,那将迫使我改变策略。

由于

1 个答案:

答案 0 :(得分:-1)

Chunks是将一起处理的数据组,在写入整个块之前不会提交任何内容。您可以在spring批处理文档Spring Batch Chunk Documentation中阅读有关块的信息。

要使Spring Batch多线程,您需要定义tasklet,例如ThreadPoolTask​​Executor。

因此,如果您没有定义任何tasklet,则可以假设您的批处理作业将是p