JDK
文章平均质量分 61
u014753478
The advance of technology is based on making it fit in so that you don't really even notice it, so it's part of everyday lift.
展开
-
知识点总结
总结知识点原创 2021-11-24 11:03:04 · 209 阅读 · 0 评论 -
并发安全集合和线程池
链接:http://note.youdao.com/noteshare?id=2fca953a259ca779438803a9bf8b9885&sub=5FBC1E4F114F4181AA5B3F0D9CF595D6原创 2021-11-23 11:13:25 · 146 阅读 · 0 评论 -
线程池知识点总结
1. 线程池中的worker继承AQS,实现了不可重入锁,主要是为了通过有锁,无锁标识worker处于忙碌状态还是空闲状态,从而可以判断是否对woker进行销毁。参考文章: ThreadPoolExecutor关闭线程池原理原创 2021-10-20 23:24:54 · 166 阅读 · 0 评论 -
AQS源码总结
本文参考文章:万字超强图文讲解AQS以及ReentrantLock应用1. CLH队列的头结点和尾结点都是虚拟节点,头结点可以理解为哨兵节点。并且为了节省内存都是lazy initialized. 并且头结点如果存在,可以保证部位CANCELLED状态2. 在doAcquireNanos(int args, long nanosTimeout)方法中,也就是具有超时功能的获取锁的过程中,并不是一开始就park住线程的,有一个自旋阈值,如果超过了在挂起,因为如果时间没有超过1000 nanosseco原创 2021-10-12 21:08:51 · 129 阅读 · 0 评论 -
ThreadLocal中的一些细节
ThreadLocal中不止是有内存泄漏的问题,源码中还有很多值得研究的细节。包括线性探测法怎么解决数据重复问题等。源码分析 ThreadLocal, ThreadLocalMap和Thread的关系图如下:为什么ThreadLocalMap采用链地址法来解决Hash冲突? Jdk中大部分采用链地址法来解决hash冲突,但是ThreadLocalMap采用开放地址发来解决哈希冲突。链地址法和开放地址法优缺点:开放地址法:1. 容易产生堆积问题,不适用于...原创 2021-07-03 17:17:30 · 128 阅读 · 0 评论 -
设计模式:Spring和JDK中用到了哪些设计模式
前言:关于设计模式的学习,如果仅仅是看一些概念或者小的demo很容易忘记并且对设计模式的理解也不是很深刻。其实结合一些常用的框架,工具类学习起来是比较快的,并且对于设计模式的理解也更加深刻。因为这些框架,工具类等是我们在开发中经常用到的。这篇文章结合Spring框架和JDK源码,对一些设计模式进行总结。在学习的同时,我们也知道了Spring和JDK中用到了哪些常用的设计模式,并且进一步思考下为什么要使用这些设计模式,好处是什么,我们在开发中哪些地方可以借鉴。Spring中用到的设计模式:...原创 2021-05-25 13:49:37 · 228 阅读 · 0 评论