![](https://img-blog.csdnimg.cn/20201014180756919.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
多线程
文章平均质量分 87
进击的小鱼
千里之行,始于足下,架构之路,从认真对待每一个技术细节开始
展开
-
闲话(双重检查锁)
以单例模式来说明双重检查锁在一次上课的途中,老师突然秀了一把双重检查锁,忽然觉得心中似乎对其并不明朗,特做此篇阐述 java 的双重检查锁,特此记录,与诸君共勉。如何实现一个安全的单例模式?开辟空间初始化赋值引用类的初始化和赋值引用是可能出现指令重排的,我们用一个例子说明 指令重排;stu 可以理解为一个句柄,不能称之为一个对象Student 为类声明Student() 为构造方法我们现在看看new 这个关键字发生了什么?在堆上开辟一块内存空间调用构造器student()原创 2022-10-18 15:46:59 · 696 阅读 · 0 评论 -
线程池(内部执行流程)
线程池也用了 3-4 年了,属于面试必问的,之前只粗略的掌握了一些用法,现作本篇予以记录 面试中问到的各种问题,以及相关代码分析,与诸君共勉。(相关原理篇 请见本人所写博客线程池设计原理)提示:以下是本篇文章正文内容,下面案例可供参考整体的线程池基本的源码分析就到此结束,后续有遇到其他问题再做补充。原创 2022-10-01 12:00:03 · 434 阅读 · 0 评论 -
初识 synchronized
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档synchronized 初解前言一、synchronized 用来做什么?1. 对象锁2.类锁3. 对整个方法上锁4. 锁静态变量4. 锁静态方法总结前言提示:这里可以添加本文要记录的大概内容:题主 synchronized 关键字一直用的少,今天开贴记录下其用法和特性。提示:以下是本篇文章正文内容,下面案例可供参考一、synchronized 用来做什么?示例:synchronized 关键字一直被用来做同步锁.原创 2022-04-09 09:16:57 · 517 阅读 · 0 评论 -
线程池应用及原理(设计篇)
1、 为何要用线程池(1)、降低服务器的资源消耗,线程池通过线程的复用,减少线程的创建节约cpu 线程创建的开销。(2)、 方便系统内线程创建的管理,如果系统到处new 线程,可能导致服务器的资源的大量消耗。导致整个系统的崩盘,引发严重后果。(3)、提供更强大的功能,如延时定时线程池。2、如何设计一个线程池2.1 线程的复用1)、我们都知道线程的生命周期为 新建,就绪,运行,阻塞以及死亡 5个状态,这5个状态中,新建、就绪(start)、阻塞(wait(),sleep()...) .原创 2020-12-05 22:56:02 · 223 阅读 · 0 评论