春天可以提供像工作队列这样的概念吗

mah*_*mar 1 spring spring-mvc

像我有25个作业的示例,我想同时执行3个作业,完成三个作业之一后,再从队列中接一个。

Jes*_*per 5

您可以使用标准Java库中的类来执行此操作-不需要Spring。使用ExecutorService,例如:

class MyJob implements Runnable {

    private final String message;

    MyJob(String message) {
        this.message = message;
    }

    @Override
    public void run() {
        System.out.println(message);
    }
}

public class Example {

    public static void main(String[] args) {
        // Executor service with 3 threads
        ExecutorService executorService = Executors.newFixedThreadPool(3);

        // Submit jobs to be executed
        executorService.execute(new MyJob("testing"));
        executorService.execute(new MyJob("one"));
        executorService.execute(new MyJob("two"));
        executorService.execute(new MyJob("three"));

        // ...
    }
}
Run Code Online (Sandbox Code Playgroud)