在: java.util.concurrent包中;
执行已提交的 Runnable 任务的对象。此接口提供一种将任务提交与每个任务将如何运行的机制(包括线程使用的细节、调度等)分离开来的方法。通常使用 Executor 而不是显式地创建线程。例如,可能会使用以下方法,而不是为一组任务中的每个任务调用 new Thread(new(RunnableTask())).start():
Executor executor = anExecutor;
executor.execute(new RunnableTask1());
executor.execute(new RunnableTask2());
...
不过,Executor 接口并没有严格地要求执行是异步的。
此包中提供的 ExecutorService(继承自 Executor) ,这是一个使用更广泛的接口。ThreadPoolExecutor 类提供一个可扩展的线程池实现。Executors 类为这些 Executor 提供了便捷的工厂方法。
---------------------------------------
Executor继承情况:
用的比较多的是ThreadPoolExecutor,这个是经常使用的线程池;
在Mina2中,使用的是 mina自己的OrderedThreadPoolExecutor;