而execute()方法则不同,它的任务直接在调用execute()方法的调用线程(通常是主线程)中运行,如果当前没有可用线程,则会立即创建新的线程来处理该任务,并在完成任务后销毁线程。5、消息传递方式 在submit()和execute()方法中,消息传递方式也存在差异。submit()方法中提交的任务可以通过Future对象获取执行结果,开发...
提交任务的方式一共有两种,分别是execute和submit。 今天就来介绍他们两个以及他们的区别。 首先来看execute,该方法位于executor中,作用是向线程中提交runnable任务。 runnable任务大家都知道,他是一个无返回值的任务,也就是他执行完是没有返回结果给你的,所以execute只适合提交无返回值的任务。 如果你的任务是有返回...
execute和submit都属于线程池的方法,execute只能提交Runnable类型的任务 submit既能提交Runnable类型任务也能提交Callable类型任务。 异常: execute会直接抛出任务执行时的异常,可以用try、catch来捕获,和普通线程的处理方式完全一致 submit会吃掉异常,可通过Future的get方法将任务执行时的异常重新抛出。 返回值: execute()没...
1、java线程池中的submit()和execute()方法有啥什么不同 两个方法都是将线程提交到线程池(1)传入的参数不同 (2)execute没有返回值。submit返回Future对象(3)excute方法会抛出异常。 sumbit方法不会抛出异常。除非你调用Future.get()。 (4)submit在interface ExecutorService内,execute在 ...
总结execute()和submit()方法的区别: 1. 接收的参数不一样; 2. submit()有返回值,而execute()没有; 例如,有个validation的task,希望该task执行完后告诉我它的执行结果,是成功还是失败,然后继续下面的操作。 3. submit()可以进行Exception处理;execute()直接抛出了异常,但它也仅仅是输出而已,我们无法使用日志框...
execute 与 submit 的基本区别 execute方法 用途:提交一个 Runnable 任务,不会返回执行结果。适用场景:当你只需要执行任务,而不需要获取结果时使用。submit方法 用途:提交一个 Runnable 或 Callable 任务,并返回一个 Future 对象,用于获取任务的执行结果或取消任务。适用场景:需要获取任务结果或在未来某个时刻...
execute方法是一种简单的提交方式,用于提交无返回值的Runnable任务;而submit方法可以提交Runnable任务和Callable任务,并返回一个表示任务结果的Future对象,方便获取任务的执行结果和进行异常处理。 延伸阅读 1. Java线程池详解:了解更多关于Java线程池的概念、用法和原理。掌握线程池的各种参数设置和线程池的不同...
1、Q: submit()方法和execute()方法有什么区别? A: submit()方法和execute()方法都是用来提交任务到线程池中执行的,但是它们之间有一些区别,主要区别在于返回值、异常处理、允许设置参数、适用场景、兼容性问题和性能差异等方面。 2、Q: submit()方法支持设置参数吗?
区别 在Java线程池中,submit()和execute()方法是用于提交任务的两种常见方式。虽然它们的目标相同,但它们在返回结果、异常处理和方法重载方面有一些区别。 返回结果:submit()方法可以接受并返回Future对象,用于表示异步任务的结果。你可以通过Future对象获取任务的执行结果,或者等待任务执行完成。而execute()方法没有返回值...