一 基本信息
首先,从Executor接口开始
查看注释
An object that executes submitted {@link Runnable} tasks.
一个执行“”提交的任务“”的对象
* This interface provides a way of decoupling task submission from the
* mechanics of how each task will be run, including details of thread
* use, scheduling, etc.
这个接口提供了一种把 任务提交和 任务如何运行的机制(包括线程使用,调度等)
解耦方式。
An {@code Executor} is normally used
* instead of explicitly creating threads.
通常会使用Executor而不是使用Thread
二 类,接口 ,继承和实现关系
Executor 接口有一个子接口ExecutorService
继续下分是AbstractExecutorService然后是
ThreadPoolExecutor
三.实现线程顺序执行
Thread a = new Thread() {
public void run() {
System.out.println("thread a 执行");
}
};
Thread b = new Thread() {
public void run() {
System.out.println("thread b 执行");
}
};
Thread c = new Thread() {
public void run() {
System.out.println("thread c 执行");
}
};
Thread d = new Thread() {
public void run() {
System.out.println("thread d 执行");
}
};
Thread e = new Thread() {
public void run() {
System.out.println("thread e 执行");
}
};
ExecutorService service = Executors.newSingleThreadExecutor();
service.execute(a);
service.execute(b);
service.execute(c);
service.execute(d);
service.execute(e);