文:
单线程——多线程的开启——线程锁——线程同步工具——手写连接池——连接池工具类。
一、线程
1. 线程的概念
2. 线程与过程的关系
3. 定义:
区别:如上!!!
4.wait() 和 sleep()
5. 线程的状态及其他 API
二、线程锁
线程并发同步时,引入了锁机制。
- 一般锁机制 :synchronized 润饰代码块与 volatile 润饰成员变量
- Lock
!!共同点:都是从里面创立锁类、再把锁传到线程里对变量对象赋值。
(1) 重入锁
(2) 读写拆散锁
区别:
三、线程同步工具类
!!共同点:都是从里面创立工具类、再把工具类的参数传到线程外面执行。
- CountDowmLatch 闭锁:期待所有线程执行完
- CyclicBarrier 栅栏:期待所有线程达到后开启
- Exchanger 交换机:交换数据
- 信号量
(1) 概念
(2)利用场景一
(3) 利用场景二
四、线程池
- 为什么应用线程池
- 线程池的外围队列
阻塞式队列:只用于线程对象,次要用于引出线程池
- 手动创立线程池
- Executors 工具创立线程
外围线程:0(长期线程)、1(队列)、N(队列)
定时线程: