前言
线程池可以并发执行多个任务,有些时候,我们可能想要跟踪任务的执行结果,甚至在一定时间内,如果任务没有执行完成,我们可能还想要取消任务的执行,为了支持这一特性,threadpoolexecutor提供了 futuretask 用于追踪任务的执行和取消。本篇介绍futuretask的实现原理。
类视图
为了更好的理解futuretask的实现原理,这里先提供几个重要接口和类的结构,如下图所示:
runnableadapter
threadpoolexecutor提供了submit接口用于提交任务,submit支持runnable和callable两种不同的接口,为了提供统一的对外接口,jdk在内部把runnable给包装成了一个callable,这一切是通过runnableadapter这个适配器来实现的。如下为runnableadapter的源码:
相关文章
猜你喜欢
- 个人网站服务器域名解析设置指南:从购买到绑定全流程 2025-06-10
- 个人网站搭建:如何挑选具有弹性扩展能力的服务器? 2025-06-10
- 个人服务器网站搭建:如何选择适合自己的建站程序或框架? 2025-06-10
- 64M VPS建站:能否支持高流量网站运行? 2025-06-10
- 64M VPS建站:怎样选择合适的域名和SSL证书? 2025-06-10





