`
Action-人生
  • 浏览: 104908 次
  • 性别: Icon_minigender_1
  • 来自: 南京
社区版块
存档分类
最新评论

submit()和execute()的区别

 
阅读更多
submit()和execute()的区别
JDK5往后,任务分两类:一类是实现了Runnable接口的类,一类是实现了Callable接口的类。两者都可以被ExecutorService执行,它们的区别是:

execute(Runnable x) 没有返回值。可以执行任务,但无法判断任务是否成功完成。——实现Runnable接口
submit(Runnable x) 返回一个future。可以用这个future来判断任务是否成功完成。——实现Callable接口
---------------------
作者:~哀而不伤
来源:CSDN
原文:https://blog.csdn.net/hhx0626/article/details/52957818
版权声明:本文为博主原创文章,转载请附上博文链接!
分享到:
评论

相关推荐

    线程池的submit和execute的区别.md

    ### 线程池的submit和execute方法的区别详解 #### 一、引言 线程池作为Java并发编程中的一项关键技术,在实现高效并发任务管理方面发挥着重要作用。而在实际开发中,开发者经常会遇到两种用于向线程池提交任务的...

    ExecutorService的execute和submit方法

    `ExecutorService`通过`execute()`和`submit()`这两个方法来提交任务进行执行。理解并熟练运用这两个方法对于优化并发性能至关重要。 `execute()`方法: `execute(Runnable command)`是`ExecutorService`最基础的...

    java处理一个form多个submit

    Java 通过不同的方式可以实现对多个 submit 按钮的处理,下面将详细介绍 Struts1 和 Struts2 中的处理方法。 在 Struts1 中,使用 LookupDispatchAction 动作可以处理含有多个 submit 的 form。但是,这种方式需要...

    domino xapgesg开发 Execute Script

    在 Domino XPages 开发中,`Execute Script` 是一个非常关键的功能,它允许开发者执行 JavaScript 或者 Expression Language (EL) 表达式,以实现服务器端的数据处理和逻辑控制。XPages 是 IBM Lotus Domino 的一个...

    Java中Future、FutureTask原理以及与线程池的搭配使用

    - 使用`execute(Runnable)`提交没有返回值的任务。 - 使用`submit(Runnable/Callable)`提交有返回值的任务,这将返回一个`Future`对象,通过它可以获取结果或管理任务状态。 例如,对于`ExecutorService es`,执行`...

    简单谈谈ThreadPoolExecutor线程池之submit方法

    在 Executor 接口中,只定义了 execute 方法,而 submit 方法则是在 ExecutorService 接口中定义的。 ```java public interface ExecutorService extends Executor { ... <T> Future<T> submit(Callable<T> task)...

    Java2023年最新免费面试题及答案附答案汇总.md 免费下载,不需要积分

    js如何实现页面刷新呢 什么是线程池 如何实现 Array 和 List 之间的转换 普通类和抽象类有哪些区别 为什么线程通信的方法wait(), notify()和notifyAll()被定义在...线程池中 submit() 和 execute() 方法有什么区别

    2022最新Java面试题常见面试题与答案汇总0001.docx

    涵盖了并行和并发有什么区别、线程和进程的区别、守护线程是什么、创建线程有哪几种方式、Runnable和Callable有什么区别、线程有哪些状态、...线程池都有哪些状态、线程池中submit()和execute()方法有什么区别等问题...

    线程池的实现以及底层原理.docx

    七、execute()方法和submit()方法的区别 execute()方法和submit()方法都是线程池的提交任务方法,但是它们有所不同: 1. execute()方法:execute()方法用于提交不需要返回值的任务,无法判断任务是否执行成功。 2....

    ceph IO latency break down

    9. ReplicatedPG::execute_ctx(副本执行上下文) 在这个阶段,副本节点会执行相应的操作,并将结果返回给 primary 节点。这里的延迟主要来自于操作执行的时间和网络延迟。 10. FileStore::queue_transactions...

    2_ExecutorService源码阅读1

    execute() 方法用于执行给定的 Runnable 任务,它是提交任务的基础方法,submit() 实际上也是通过 execute() 来执行任务的。 总结来说,ExecutorService 是 Java 并发编程的重要组件,它提供了一套完善的机制来管理...

    Java线程池学习资料-全

    `execute()`和`submit()`方法是线程池提交任务的两种方式。`execute()`接受`Runnable`对象,而`submit()`可以接受`Callable`对象,它会将`Callable`封装成`FutureTask`后再调用`execute()`。`SynchronousQueue`是一...

    高并发编程,高并发编程,高并发编程

    * AbstractExecutorService是Java中的抽象线程池类,提供了execute()和submit()方法的默认实现。 七、高并发编程的其他知识点 * volatile关键字可以确保变量的可见性和原子性。 * synchronized关键字可以确保方法...

    EBS FORM开发常用技巧

    6. **动态SQL**:使用Execute Immediate语句执行动态SQL,适应复杂的数据查询和更新需求。 三、用户交互 7. **事件驱动编程**:利用各种事件触发器如When-Button-Pressed,实现用户交互的响应。 8. **提示和错误...

    webbrowser自动填表和提交

    在IT领域,自动填表和提交是Web自动化测试和数据录入的重要组成部分,尤其在处理大量重复性输入时,能够显著提高工作效率。`webbrowser`模块是Python标准库的一部分,它提供了一个接口,允许我们控制默认的系统...

    wpf下mvvm使用小例子

    (_submitCommand = new RelayCommand(ExecuteSubmit)); private void ExecuteSubmit() { // 处理提交操作,如验证数据或调用模型层的方法 } } ``` `ViewModelBase`通常是从MvvmLight库(如MvvmLightTest中的...

    医嘱数据接口专项方案中间表.doc

    24. FIRST_EXECUTE_TIME, FIRST_EXECUTE_ID, FIRST_EXECUTE_NAME: 首次实施时间、首次实施人的ID和姓名。 25. AFFIRM_STOP_TIME, AFFIRM_STOP_ID, AFFIRM_STOP_NAME: 确定停止医嘱的时间、确定停止的人的ID和姓名。...

    Oracle存储过程中任务和管道的应用

    对当前用户(测试用户),赋于以下权力:EXECUTE DBMS_PIPE、EXECUTE DBMS_LOCK、EXECUTE DBMS_JOB。 3. 建立模拟大业务处理存储过程 该存储过程通过循环 30 次,调用 DBMS_LOCK.SLEEP(1)(体眠 1 秒)和写管道...

    C# 提取Word目录适用WPS,Microsoft.Office.Interop.Word

    find.Execute(FindText: find.Text, Forward: true, Wrap: WdFindWrap.wdFindStop, Format: true); ``` 4. **解析目录结构**:找到的每个段落代表目录的一个层级。可以通过检查段落的`Style`属性来确定其在目录中的...

Global site tag (gtag.js) - Google Analytics