执行Thread队列

Luc*_*uca 3 java multithreading runnable

我需要执行一个线程队列.我需要只执行一个线程,然后将其他线程放入队列中,当前线程完成后,我需要传递给队列中的第一个线程.

我需要在我的JTable上实现实时搜索.该表包含50.000行,因此没有这种方法,性能非常糟糕.我不知道如何实现它.有人可以帮帮我吗?谢谢!

Bri*_*ian 9

使用单线程ExecutorExecutors.newSingleThreadExecutor().您可以将作业作为Runnable对象传递给它Executor,让它为您完成工作.

private final Executor executor = Executors.newSingleThreadExecutor();

public void doSomethingWith(final Object obj) {
    executor.execute(new Runnable() {

        public void run() {
            // Do something with obj
        }
    });
}
Run Code Online (Sandbox Code Playgroud)

在方法中将您想要的代码一次一次地运行run.

  • @Nambari来自文档:"任务保证按顺序执行,任何给定时间任务不会超过一个." (2认同)