前文:

单线程——多线程的开启——线程锁——线程同步工具——手写连接池——连接池工具类。

一、线程

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)应用场景二

高并发:线程、线程锁与线程池(精华),手写代码实现线程池

 

 

三、线程池

这里分享一个手写代码实现线程池的视频,需要代码的朋友可以加入到群里一起探讨技术交流,领取资料

线程池视频链接:

150行代码,手把手写完线程池(完整版)|项目实战|消息队列|数据库

 

高并发:线程、线程锁与线程池(精华),手写代码实现线程池

 

1.为什么使用线程池

高并发:线程、线程锁与线程池(精华),手写代码实现线程池

 

2.线程池的核心队列

阻塞式队列:只用于线程对象,主要用于引出线程池

高并发:线程、线程锁与线程池(精华),手写代码实现线程池

 

3.手动创建线程池

高并发:线程、线程锁与线程池(精华),手写代码实现线程池

 

4.Executors工具创建线程

核心线程:0(临时线程)、1(队列)、N(队列)

高并发:线程、线程锁与线程池(精华),手写代码实现线程池

 

定时线程:

高并发:线程、线程锁与线程池(精华),手写代码实现线程池

 

 

 

四、彩蛋图

高并发:线程、线程锁与线程池(精华),手写代码实现线程池

Logo

CSDN联合极客时间,共同打造面向开发者的精品内容学习社区,助力成长!

更多推荐