春のバッチで実行中のスレッドを停止します

ジョナサン・カブラル:

私はいくつかのスレッドを実行するために、パーティションを使用して春のバッチ・アプリケーションを、持っています。問題は、それが一定の時間に達した場合、私は私のスレッドを停止する必要があり、です。

私はそれを行う方法がわかりません。私は、パーティショナのステップを持っています

@Bean
public Step partitionerStep() {
    return stepBuilderFactory.get("PARTITIONER_STEP")
            .partitioner("SLAVE_STEP", partitioner())
            .step(stepConcederPerfilNormal())
            .taskExecutor(taskExecutor())
            .build();
}

まず、私はThreadPoolTask​​Executorを使用して、私のスレッドを停止することができると思ったが、私の考えとしての仕事ではありません

@Bean
public TaskExecutor taskExecutor() {
    ThreadPoolTaskExecutor executor = new ThreadPoolTaskExecutor();
    executor.setMaxPoolSize(200);
    executor.setCorePoolSize(50);
    executor.setAllowCoreThreadTimeOut(true);
    return executor;
}

ただ、それを修正します。それは1H30Mのために実行している場合、私は私のスレッドを停止する必要があります

マフムード・ベンHassine:

春のバッチはそれに委譲、作成またはスレッドを管理しませんTaskExecutor

それは1H30Mのために実行している場合、私は私のスレッドを停止する必要があります

以下のかもしれないのヘルプ:ストップ特定の時間が経過した後のスレッド

おすすめ

転載: http://43.154.161.224:23101/article/api/json?id=281759&siteId=1