future使用
2023-05-14 09:03:37
Future
模式的核心思想是能够让主线程将原来需要同步等待的这段时间用来做其他的事情。(因为可以异步获得执行结果,所以不用一直同步等待去获得执行结果)
源码
1 | public interface Future<V> { |
cancel()
取消这个执行逻辑,如果这个逻辑已经正在执行,提供可选的参数来控制是否取消已经正在执行的逻辑。isCancelled()
判断执行逻辑是否已经被取消。isDone()
判断执行逻辑是否已经执行完成。get()
- 获取执行逻辑的执行结果。
- 允许在一定时间内去等待获取执行结果,如果超过这个时间,抛
TimeoutException
。