前文:
单线程——多线程的开启——线程锁——线程同步工具——手写连接池——连接池工具类。
一、线程
1.线程的概念
2.线程与进程的关系
3.定义:
区别:如上!!!
4.wait()和sleep()
5.线程的状态及其他API
二、线程锁
线程并发同步时,引入了锁机制。
1. 普通锁机制:synchronized 修饰代码块与volatile 修饰成员变量
2.Lock
!!共同点:都是从外面创建锁类、再把锁传到线程里对变量对象赋值。
(1)重入锁
(2)读写分离锁
区别:
二、线程同步工具类
!!共同点:都是从外面创建工具类、再把工具类的参数传到线程里面执行。
1.CountDowmLatch闭锁:等待所有线程执行完
2.CyclicBarrier栅栏:等待所有线程达到后开启
3.Exchanger交换机:交流数据
4.信号量
(1)概念
(2)应用场景一
(3)应用场景二
三、线程池
这里分享一个手写代码实现线程池的视频,需要代码的朋友
可以加入到群里一起探讨技术交流,领取资料 线程池视频链接:
1.为什么使用线程池
2.线程池的核心队列
阻塞式队列:只用于线程对象,主要用于引出线程池
3.手动创建线程池
4.Executors工具创建线程
核心线程:0(临时线程)、1(队列)、N(队列)
定时线程:
四、彩蛋图