Loading...
Skip List 来自William Pugh 的一篇论文《Skip Lists: A Probabilistic Alternative to Bal...
Java注解目标需求:我们定义一个可以作用于方法上的注解,被注解的方法在产生异常时会自动重新执行怎样方便的实现这种功能呢,这里分享一种结合Spring A...
还记得很久以前看HashTable的源码的时候,因为老早就听说HashTable已经被取代了——在多线程并发的情况下性能是在太差,因此看到HashTabl...
1. AQS是什么AQS的全称是Abstract Queued Synchronizer,即抽象队列同步器,它封装了一套多线程访问共享资源的模板,为同步类...
关于实现一个线程安全的List,我们需要考虑的点有:何时初始化List,初始化的时候大小要设置多小,我们的List能不能实现扩容如何保证线程安全,能够良好...
继上次看完HashMap之后,这次来看一看技术含量更高的ConcurrentHashMapJDK1.8之后的ConcurrentHashMap的源码量可以...
还记得以前看源码的时候,第一次看到Unsafe类的时候的"震撼感"。首先是这个名字 Unsafe 就有种让人敬而远之的感觉,其次进去看了一下还大多都是na...
1. 初步介绍我们在使用多线程时,经常会有需要让主线程等待多个子线程执行完毕后再进行最后处理的操作。使用Join方法可以来实现这一点。不过除了join方法...
来挖一挖ThreadLocal的神秘之处1. 什么是ThreadLocal如果我们有两位黄金矿工,而他们只有一个矿袋子时,则两个矿工同时捞上来一个矿石时需...
继上篇文章稍微撕一下HashMap的源码之后,我们基本了解了HashMap的工作机制和实现原理,这样我们就可以自己照着它的思路来自己实现一个基于Hash算...
众所周知HashMap是Map接口最常用的实现类,是基于哈希函数的一类容器,可以保存Key-Value类型的元素。接下来开始慢慢分析这个容器。1. 数据结...
最近花了一点时间看了一下ArrayList的源码和扩容原理,这里分享一下有JDK8和JDK14两个版本的源码哦(干货满满)1. 观察构造函数查看源码如下(...