Executor接口只有一个方法execute(Runnable command)
,它使得任务的提交和任务的运行解耦。在多线程编程中,Executor通常用来代替Thread类的建立new Thread(new(RunnableTask())).start()
java
Executor executor = anExecutor; executor.execute(new RunnableTask1());
Executor只是接口,须要Class去实现其中的execute()
方法。编程
ExecutorService接口继承了Executor接口,且更加被普遍使用。它相比Executor接口,多了submit()
、shutdown()
、shutdownNow()
等方法。多线程
shutdown:已经被提交的任务能够运行到结束,不接受新任务的提交
shutdownNow:正在运行的任务不能够运行到结束,要立刻中止
submit:submit扩展了execute方法,它会返回Future。线程