Runnable与Callable不同点:
- Runnable不返回任务执行结果,Callable可返回任务执行结果
- Callable在任务无法计算结果时抛出异常,而Runnable不能
- Runnable任务可直接由Thread的start方法或ExecutorService的submit方法去执行
使用Future的好处:
- 获取任务的结果,判断任务是否完成,中断任务
- Future的get方法很好的替代的了Thread.join或Thread,join(long millis)
- Future的get方法可以判断程序代码(任务)的执行是否超时
网友评论