Jas*_*n S 3 java concurrency multithreading
我喜欢ExecutorService系列类/接口.我不必担心线程; 我接受一个ExecutorService实例并使用它来安排任务,如果我想使用8线程或16线程池,那么,很好,我根本不用担心,它只是发生取决于如何ExecutorService已设置.欢呼!
但是,如果我的某些任务需要按顺序执行,我该怎么办?理想情况下,我会要求ExecutorService让我在一个线程上安排这些任务,但似乎没有任何方法可以这样做.
编辑:任务未提前知道,它们是由各种事件不规律地生成的无限系列任务(想想随机/未知到达过程:例如点击Geiger计数器或按键事件).
你可以编写一个实现,Runnable它需要一些任务并按顺序执行它们.
就像是:
public class SerialRunner implements Runnable {
    private List<Runnable> tasks;
    public SerialRunner(List<Runnable> tasks) {
        this.tasks = tasks;
    }
    public void run() {
        for (Runnable task: tasks) {
            task.run();
        }
    }
}