博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
ExecutorService中submit和execute区别
阅读量:2455 次
发布时间:2019-05-10

本文共 924 字,大约阅读时间需要 3 分钟。

ExecutorService中submit和execute区别

execute

void execute(Runnable command);

无返回值,只能接收Runnable的实现。

submit

Future submit(Callable task);

Future submit(Runnable task, T result);
Future<?> submit(Runnable task);

有返回值,并且通过Future.get()获取返回值或异常信息,能接收Callable或Runnable的实现。

public Future<?> submit(Runnable task) 和 public Future submit(Runnable task, T result)

源码:

public Future
submit(Runnable task) {
if (task == null) throw new NullPointerException(); RunnableFuture
ftask = newTaskFor(task, null); execute(ftask); return ftask; } public
Future
submit(Runnable task, T result) {
if (task == null) throw new NullPointerException(); RunnableFuture
ftask = newTaskFor(task, result); execute(ftask); return ftask; }

区别:通过源码分析两个都是执行newTaskFor(Runnable, T),然后会将传入的T返回出来,第一个默认传入的泛型是一个null,所以返回值也是null。

转载地址:http://ddchb.baihongyu.com/

你可能感兴趣的文章
hadoop单机映射_如何在命令行中设置Hadoop的映射器和缩减器的数量?
查看>>
刘昕 hkust_在Linux上配置HKUST的sMobileNet
查看>>
Python“ for”循环(定迭代)
查看>>
软件测试应届生没有项目经历_为什么有些软件项目网站糟透了,而另一些却没有
查看>>
python入门测试教程_Python测试入门
查看>>
python概率编程_Python中的概率编程
查看>>
Python中的运算符和表达式
查看>>
读写csv文件python_用Python读写CSV文件
查看>>
python super_使用Python super()增强您的课程
查看>>
愚人节导入_愚人节Python恶作剧
查看>>
正则表达式科学计数法_数据科学家的正则表达式
查看>>
sql基础_SQL基础
查看>>
一个工作表可以有两个事件吗_你有两个工作
查看>>
Raul的新机器学习书!
查看>>
python制作可视化图表_可视化数据–用python覆盖图表
查看>>
双耳节拍 枕头_枕头3-0-0不在
查看>>
谷歌聊天机器人api_如何编写针对Google地图等网络应用量身定制的聊天机器人
查看>>
npm和angular_如何开发,使用和发布Angular库到NPM
查看>>
为什么要远离对日外包_远离魔法-或:为什么我不想再使用Laravel
查看>>
二进制数据结构:JavaScript中的树和堆简介
查看>>