两个方法都可以向线程池提交任务,execute()方法的返回类型是 void,它定义在Executor 接口中。 而 submit()方法可以返回持有计算结果的 Future 对象,它定义在ExecutorService 接口中,它扩展了 Executor 接口,其它线程池类像 ...
一: submit 方法,可以提供Future lt T gt 类型的返回值。 executor 方法,无返回值。 execute无返回值 submit有Future返回值 : 二: excute方法会抛出异常。 sumbit方法不会抛出异常。除非你调用Future.get 。 三: excute入参Runnable submit入参可以为Callable ,也可以为Runnable。 ...
2018-10-13 23:49 0 2454 推荐指数:
两个方法都可以向线程池提交任务,execute()方法的返回类型是 void,它定义在Executor 接口中。 而 submit()方法可以返回持有计算结果的 Future 对象,它定义在ExecutorService 接口中,它扩展了 Executor 接口,其它线程池类像 ...
execute() 参数 Runnable ;submit() 参数 (Runnable) 或 (Runnable 和 结果 T) 或 (Callable) execute() 没有返回值;而 submit() 有返回值 submit() 的返回值 Future 调用get方法时 ...
在线程池里提交任务经常见到submit与execute,如何选择,傻傻分不清楚。那么他们俩有什么区别,使用场景是什么?这篇博客将会介绍。 1.方法定义 2.使用上的区别 2.1execute没有返回值(Future) 2.2执行结果(future.get ...
代码示例: execute 方法执行 runnable 任务,submit 方法执行 callable 任务,callable 任务有返回值,而 runnable 任务是 void 的,无返回值。 对于 Runnable,task 是 MyRunner ...
submit方法: submit返回的最终是FutureTask对象 execute方法: 具体的实现在ThreadPoolExecutor类中 submit内部调用execute submit有返回值 ...
在Java5之后,并发线程这块发生了根本的变化,最重要的莫过于新的启动、调度、管理线程的一大堆API了。在Java5以后,通过Executor来启动线程比用Thread的start()更好。在新特征中,可以很容易控制线程的启动、执行和关闭过程,还可以很容易使用线程池的特性 ...
submit和execute都是 ExecutorService 的方法,都是添加线程到线程池中。 区别 三个区别: 1、接收的参数不一样 2、submit有返回值,而execute没有 Method submit extends base method ...
线程池中的execute方法大家都不陌生,即开启线程执行池中的任务。还有一个方法submit也可以做到,它的功能是提交指定的任务去执行并且返回Future对象,即执行的结果。下面简要介绍一下两者的三个区别: 1、接收的参数不一样 2、submit有返回值,而execute没有 用到返回值 ...