Runnable与Callable 区别 参考: http://www.cnblogs.com/frinder6/p/5507082.html https://blog.csdn.net/m0_37822338/article/details/100010495 注意: Callable接口支持返回执行结果,此时需要调用FutureTask.get()方法实现,此方法会阻塞主线程直到获取‘将来’结果;当不调用此方法时,主线程不会阻塞! 另外 FutureTask.get(long var1, TimeUnit var3) 方法还支持方法超时控制。