Future类存在于JDK的concurrent包中,主要用途是接收Java的异步线程计算返回的结果. 个人理解的使用场景大概如下: 有两个任务A和B,A任务中仅仅需要使用B任务计算成果,有两种方法实现: A和B在同一个线程中顺序执行.即先执行B,得到返回结果之后再执行A. 开两个线程,A和B并行执行.当A需要B的计算结果时如果B还没有执行完,A既可以选择阻塞等待B执行完,也可以先做其他的工作,过一段时间后再询问一次B. 毫无疑问,如果B是一个耗时比较大的计算任务时,后者比前者的效率高了很多.…