ThreadPoolExecutor submit和excute的区别
时间: 2024-04-10 13:25:46 浏览: 84
线程池的submit和execute的区别.md
ThreadPoolExecutor是Java中的一个线程池实现类,它提供了submit()和execute()两种方法来提交任务到线程池中。
submit()方法用于提交一个Callable或Runnable任务,并返回一个表示任务执行结果的Future对象。通过Future对象可以获取任务的执行状态和结果。submit()方法可以用于处理有返回值的任务。
execute()方法用于提交一个Runnable任务,没有返回值。它只负责将任务提交给线程池执行,而不关心任务的执行结果。
总结一下两者的区别:
1. submit()方法可以提交Callable任务,而execute()方法只能提交Runnable任务。
2. submit()方法返回一个Future对象,可以用于获取任务的执行状态和结果,而execute()方法没有返回值。
3. submit()方法可以用于处理有返回值的任务,而execute()方法只能处理没有返回值的任务。
阅读全文