点击关注公众号,利用碎片时间学习
前文:
单线程——多线程的开启——线程锁——线程同步工具——手写连接池——连接池工具类。
一、线程
1.线程的概念

2.线程与进程的关系

3.定义:

区别:如上!!!
4.wait()和sleep()

5.线程的状态及其他API

二、线程锁
线程并发同步时,引入了锁机制。
-
普通锁机制:synchronized 修饰代码块与volatile 修饰成员变量

-
Lock
!!共同点:都是从外面创建锁类、再把锁传到线程里对变量对象赋值。
(1)重入锁

(2)读写分离锁

区别:

三、线程同步工具类
!!共同点:都是从外面创建工具类、再把工具类的参数传到线程里面执行。
-
CountDowmLatch闭锁:等待所有线程执行完

-
CyclicBarrier栅栏:等待所有线程达到后开启

-
Exchanger交换机:交流数据

-
信号量
(1)概念

(2)应用场景一

(3)应用场景二

四、线程池
-
为什么使用线程池

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

-
手动创建线程池

-
Executors工具创建线程
核心线程:0(临时线程)、1(队列)、N(队列)

定时线程:

五、彩蛋图

感谢阅读,希望对你有所帮助 :)
来源:blog.csdn.net/weixin_42687074/article/details/89385333
推荐:
PS:因为公众号平台更改了推送规则,如果不想错过内容,记得读完点一下“在看”,加个“星标”,这样每次新文章推送才会第一时间出现在你的订阅列表里。点“在看”支持我们吧!
原文始发于微信公众号(Java笔记虾):看完这篇线程、线程锁与线程池讲解,面试随便问!
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/55256.html