Executorservice 和 Executor 有什么区别?
Executor 接口
Executor 是一个简单的接口,它定义了一个方法execute(Runnable command)
。这个接口的主要目的是将任务的提交和任务的执行分离,它提供了一种通用的方式来执行一个Runnable
任务,但是它没有提供更多高级的功能,比如任务的取消、任务的完成状态查询、线程池的管理等。它就像是一个基本的任务执行框架,只关注任务的执行动作本身。
例如,我们可以实现一个简单的Executor
接口来顺序执行任务:
class SimpleExecutor implements Executor {
@Override
public void execute(Runnable command) {
command.run();
}
}
使用这个SimpleExecutor
就可以像下面这样执行一个简单的任务:
Runnable task = () -> System.out.println("Task is running");
SimpleExecutor executor