线程池
1.什么是线程池.
一个用来创建和管理线程的容器;
2.线程池的作用.
提高线程的复用性,降低资源消耗
提高线程的响应速度,提高线程的可管理性
3.线程的核心思想;
线程的复用
4.线程池的创建
ExecutorService pools = Executors.newFixedThreadPool(线程的个数);
submit() ;表示加入线程池
5.线程死锁
什么是线程死锁: 就是程序互相进入等待状态
线程通信
前提:线程与线程之间的通信比较的容易。
因为线程与线程是属于同一个进程的,在内存中属于同一块区域。
线程通信必须先保证线程安全。
线程通信的原因:
软件领域中经常有生产者和消费者模型。

一般来说:通用的模型是生产者生产出商品,消费者应该立即消费。
生产商品不能过多,消费商品不能没有。
简单来说:生产者生产商品,消费者商品商品,生产者继续生产商品 ,消费者继续消费商品

Lambda表达式
1.什么是lambda表达式?
是JDK1.8以后的新技术,用于简化匿名内部类代码书写的
2.为什么要用匿名内部类
匿名内部直接new对象重写方法,无须定义子类.
3.Lambda表达式的格式
(数据类型 变量名 ,数据类型 变量名 ) ->{
执行的代码
}
4. Lambda表达式使用的前提条件(重要):
(1)只能简化接口的匿名内部类写法
(2)接口中必须只能有一个抽象方法
(3).Lambda表达式只能简化函数式接口
函数式接口:
(1)首先是一个接口。
(2)这个接口中只能有一个抽象方法。
满足这两个条件才可以使用Lambda表达式
函数式接口都会加上@FunctionalInterface,表示这个接口必须是函数式接口。

线程池和lambda表达式的更多相关文章

  1. Java之线程池和Lambda表达式

    线程池和lambda表达式 学习线程池和lambda表达式的理解 补充一个知识点(单例设计模式) 在多线程中,我们只需要一个任务类,为了防止创建多个任务类,这个时候就需要用到单例模式,单例模式有两种设 ...

  2. 线程池、Lambda表达式

    线程池.Lambda表达式 线程池.Lambda表达式 线程池.Lambda表达式 线程池.Lambda表达式 线程池.Lambda表达式 线程池.Lambda表达式 线程池.Lambda表达式 (正 ...

  3. JavaSE学习笔记(13)---线程池、Lambda表达式

    JavaSE学习笔记(13)---线程池.Lambda表达式 1.等待唤醒机制 线程间通信 概念:多个线程在处理同一个资源,但是处理的动作(线程的任务)却不相同. 比如:线程A用来生成包子的,线程B用 ...

  4. 01 语言基础+高级:1-7 异常与多线程_day07 【线程池、Lambda表达式】

    day07[线程池.Lambda表达式] 主要内容 等待与唤醒案例 线程池 Lambda表达式 教学目标 -[ ] 能够理解线程通信概念-[ ] 能够理解等待唤醒机制-[ ] 能够描述Java中线程池 ...

  5. 328 day07线程池、Lambda表达式

    day07[线程池.Lambda表达式] 主要内容 等待与唤醒案例 线程池 Lambda表达式 教学目标 -[ ] 能够理解线程通信概念 -[ ] 能够理解等待唤醒机制 -[ ] 能够描述Java中线 ...

  6. Java【线程池、Lambda表达式】

    见pdf 等待唤醒机制 wait和notify 第二章 线程池 如果并发的线程数量很多,并且每个线程都是执行一个时间很短的任务就结束了,这样频繁创建线程就会大大降低 系统的效率,因为频繁创建线程和销毁 ...

  7. Java线程池 与Lambda

    七.线程池.Lambda 1.1基本概念: ​ 线程池:其实就是一个容纳多个线程的容器,其中的线程可以反复使用,省去了频繁创建线程对象的操作,无需反复创建线程而消耗过多的资源. 1.2线程池的好处: ...

  8. 1.1 lambda表达式

    一.处理匿名内部类 1.Runnable接口 new Thread(new Runnable() { public void run() { System.out.println("hell ...

  9. jdk 8 lambda表达式以及Predicate接口

    了解lambda之前先了解下什么是函数式接口,函数式接口即接口里必须有一个抽象方法(抽象的方法只能有一个,可以有其他的用default修饰的方法) jdk8里新增了一个@FunctionalInter ...

随机推荐

  1. springmvc两种非注解的处理器映射器

    <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.sp ...

  2. Tomcat9控制台中文乱码的解决方案

    1.网上大部分都是这种方法 注释掉 tomcat 9 安装目录下的conf里的 logging.properties 找到 java.util.logging.ConsoleHandler.encod ...

  3. print.js继承原有样式

    npm install --save print-js import Print from 'print-js' 调用print.js插件 Print({ printable: 'printJS-fo ...

  4. 脚本代码混淆-Python篇-pyminifier(1)

    前言 最近研究了一下脚本语言的混淆方法,比如 python,javascript等.脚本语言属于动态语言,代码大多无法直接编译成二进制机器码,发行脚本基本上相当于暴露源码,这对于一些商业应用是无法接受 ...

  5. SeekBar拖动条

    seekbar拖动条,通过滑块的位置值的改变,来对某些数据进行调节,比如音量调节; 改变滑块的外观可以通过android:thumb属性完成 实例:拖动滑块改变图片透明度 <LinearLayo ...

  6. tomcat启动抛出异常

    2018-5-26 15:55:47 org.apache.catalina.startup.VersionLoggerListener log信息: Server version: Apache T ...

  7. 4、链栈的实现(java代码)

    1.链节点 public class Node<T> { public T data; public Node next; } 2.实现代码 public class Stack<T ...

  8. [Leetcode] 第338题 比特位计数

    一.题目描述 给定一个非负整数 num.对于 0 ≤ i ≤ num 范围中的每个数字 i ,计算其二进制数中的 1 的数目并将它们作为数组返回. 示例 1: 输入: 2 输出: [0,1,1] 示例 ...

  9. git使用笔记-git项目的建立及配置、创建子分支及独立分支、分支重命名

    一.git的基本使用 1.下载安装git (略) 2.配置gitconfig 配置内容:(主要是你的git的账户信息,提交命令的别名) 3.配置git公钥(输入$ ssh-keygen -t rsa ...

  10. Django+MySQL Dashboard 网页端数据库可视化

    1. Overview Python+MySQL+Django, 有些数据托管在 MySQL 的数据库,然后我们希望进行可视化,通过 web 的方式对数据库的信息去进行展示/检索/维护/.. 这个项目 ...