启动线程执行任务,如果需要在任务执行完毕之后得到任务执行结果,可以使用从Java 1.5开始提供的Callable和Future
下面就分析一下Callable、Future以及FutureTask的具体实现及使用方法
源码分析基于JDK 1.7
一、Callable 与 Runnable
java.lang.Runnable是一个接口,只有一个run()方法
public interface Runnable { public abstract void run(); }
run()方法
的返回值是void,故在执行完任务后无法返回任何结果
Callable是java.util.concurrent包下的,也是一个接口,也只有一个
延伸阅读
学习是年轻人改变自己的最好方式