区别:

  1.参数

    execute  Runnable

    submit     Callable

  2.返回值

    execute :void

    submit :Future

  3.异常

    execute 会在子线程中抛出异常,在主线程捕捉不到
    submit 不会字码抛出异常, 而是会讲一次暂时存起来,等Future.get()方法的时候 ,才会抛出, 可以在主线程捕捉, 处理异常更方便

package org.example.c2;

import java.util.concurrent.*;

/***
* @Author 徐庶
* @Slogan 致敬大师,致敬未来的你
*/
public class C3_ExecuteVSSubmit { public static void main(String[] args) throws ExecutionException, InterruptedException {
ExecutorService threadPool = Executors.newFixedThreadPool(5); //一个饭店,5张桌子 // execute方法和submit有什么区别
// 1.参数
// execute Runnable.run
// submit callable
// 2.返回值
// execute void
// submit Future
// 3. 异常
// execute 会在子线程中抛出异常,在主线程捕捉不到
// submit 不会字码抛出异常, 而是会讲一次暂时存起来,等Future.get()方法的时候
// ,才会抛出, 可以在主线程捕捉, 处理异常更方便 // 为什么execute也可以执行带返回值的线程 Future<?> future = threadPool.submit(() -> {
int a = 1 / 0;
System.out.println("执行");
});
Object o = future.get(); /* Future<Integer> future = threadPool.submit(() -> {
System.out.println("执行...");
return 5;
});
Integer integer = future.get();
System.out.println(integer); */
}
}

excute方法和submit方法的更多相关文章

  1. Android HTTP实例 使用GET方法和POST方法发送请求

    Android HTTP实例 使用GET方法和POST方法发送请求 Web程序:使用GET和POST方法发送请求 首先利用MyEclispe+Tomcat写好一个Web程序,实现的功能就是提交用户信息 ...

  2. 第二百五十八节,Tornado框架-逻辑处理get()方法和post()方法,初识模板语言

    Tornado框架-逻辑处理get()方法和post()方法,初识模板语言 Tornado框架,逻辑处理里的get()方法,和post()方法 get()方法,处理get方式的请求post()方法,处 ...

  3. ServletContext结合Servlet接口中的init()方法和destroy()方法的运用----网站计数器

    我们一般知道Servlet接口中的init()方法在tomcat启动时调用,destroy()方法在tomcat关闭时调用.那么这两个方法到底在实际开发中有什么作用呢?这就是这个随笔主要讲的内容. 思 ...

  4. ASP.NET Core 中文文档 第二章 指南(4.10)检查自动生成的Detail方法和Delete方法

    原文 Examining the Details and Delete methods 作者 Rick Anderson 翻译 谢炀(Kiler) 校对 许登洋(Seay).姚阿勇(Mr.Yao) 打 ...

  5. ThinkPHP的D方法和M方法的区别

    M方法和D方法的区别 ThinkPHP 中M方法和D方法都用于实例化一个模型类,M方法 用于高效实例化一个基础模型类,而 D方法 用于实例化一个用户定义模型类. 使用M方法 如果是如下情况,请考虑使用 ...

  6. Hibernate中evict方法和clear方法说明

    Hibernate中evict方法和clear方法说明 先创建一个对象,然后调用session.save方法,然后调用evict方法把该对象清除出缓存,最后提交事务.结果报错: Exception i ...

  7. virtual方法和abstract方法

    在C#的学习中,容易混淆virtual方法和abstract方法的使用,现在来讨论一下二者的区别.二者都牵涉到在派生类中与override的配合使用. 一.Virtual方法(虚方法) virtual ...

  8. JavaScript indexOf() 方法和 lastIndexOf() 方法

    一,定义和用法 indexOf() 方法可返回某个指定的字符串值在字符串中首次出现的位置. lastIndexOf() 方法可返回一个指定的字符串值最后出现的位置,在一个字符串中的指定位置从后向前搜索 ...

  9. wait方法和sleep方法的区别

    一.概念.原理.区别 Java中的多线程是一种抢占式的机制而不是分时机制.线程主要有以下几种状态:可运行,运行,阻塞,死亡.抢占式机制指的是有多个线程处于可运行状态,但是只有一个线程在运行.      ...

  10. M方法和D方法的区别

    M方法和D方法的区别 ThinkPHP 中M方法和D方法都用于实例化一个模型类,M方法 用于高效实例化一个基础模型类,而 D方法 用于实例化一个用户定义模型类. 使用M方法 如果是如下情况,请考虑使用 ...

随机推荐

  1. 《Kali渗透基础》07. 弱点扫描(一)

    @ 目录 1:漏洞发现 1.1:Exploit-DB 1.2:searchsploit 1.3:nmap 2:漏洞管理 3:弱点扫描类型 4:漏洞基本概念 4.1:CVSS 4.2:CVE 4.3:O ...

  2. Navicat连接docker mysql出错

    一.启动容器 首先启动docker mysql: docker run -itd --name mysql -p 13306:3306 -e MYSQL_ROOT_PASSWORD=123456 my ...

  3. iOS越狱后必装软件

    iOS越狱后就跟ubuntu没两样了,很多ubuntu下常用的软件都要装一下 openssh 这个软件可以让我们能够登录iphone Apt-get 用这个软件可以安装很多软件,主要是一些工具调试类软 ...

  4. SQL取上一条, 下一条记录方法

    如果我们需要取id为3的前后的1条记录.  就可以用以下方法 取上一条记录: select  *  from `表名` where `id`<3 order by `id` desc limit ...

  5. DevSecOps之应用安全测试工具及选型

    上篇文章,有同学私信想了解有哪些DevSecOps工具,这里整理出来,供大家参考(PS: 非专业安全人士,仅从DevOps建设角度,给出自己见解) 软件中的漏洞和弱点很常见:84%的软件漏洞都是利用应 ...

  6. python入门基础(14)--类的属性、成员方法、静态方法以及继承、重载

    上一篇提到过类的属性,但没有详细介绍,本篇详细介绍一下类的属性 一 .类的属性 方法是用来操作数据的,而属性则是建模必不的内容,而且操作的数据,大多数是属性,比如游戏中的某个boss类,它的生命值就是 ...

  7. MongoDB慢日志

    MongoDB慢日志 ​ 熟悉 Mysql 的人应该知道,Mysql 是有个慢查询日志的,它可以帮助我们进行优化我们的 sql,并提高我们系统的稳定性和流畅性.那么 MongoDB 中是否也有类似的功 ...

  8. Spring扩展接口(1):ApplicationContextInitializer

    在此系列文章中,我总结了Spring扩展接口,以及各个扩展点的使用场景.并整理出一个bean在spring中从被加载到初始化到销毁的所有可扩展点的顺序调用图.这样,我们也可以看到bean是如何一步步加 ...

  9. HarmonyOS 4.0 实况窗上线!支付宝实现医疗场景智能提醒

    本文转载自支付宝体验科技,作者是蚂蚁集团客户端工程师博欢,介绍了支付宝如何基于 HarmonyOS 4.0 实况窗实现医疗场景履约智能提醒. 1.话题背景 8 月 4 日,华为在 HDC(华为 202 ...

  10. WebKit Inside: CSS 样式表解码字符集

    CSS 样式表引入有3种方式: 外部样式表.内部样式表.行内样式,不同的引入方式,解码样式表的字符集原理不一样. 外部样式表 外部样式表由 link 标签引入,当 WebKit 解析到 link 标签 ...